View previous topic :: View next topic |
Author |
Message |
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Sun Nov 08, 2009 8:38 pm Post subject: [kernel] dipendenze incrociate. |
|
|
Code: |
cloc3@gentoo-live ~ $ dmesg|grep "Unknown symbol"|wc -l
21
|
ed adesso va anche bene, perché ho tappato qualche falla.
fino ad ora, mi sono sempre disinteressato a questi messsaggi del kernel, ma ora ho il sospetto che possano essere legati direttamente ad alcuni malfunzionamenti delle mie immagini live.
la cosa strana è che questi messaggi si rilevano solo quando i moduli vengono caricati direttamente nella initramfs (da un programma di riconoscimento automatico dell'hardware basato su pcimodules).
se gli stessi moduli vengono caricati successivamente, dopo l'avvio di init, i messaggi non compaiono (restano solo i 21 di sopra, perché non posso posticipare il caricamento dei moduli usb, visto che avvio da una chiavetta usb).
significa che il kernel, per caricare i moduli, ha bisogno di qualche programma di sistema? mi piacerebbe avere il parere di qualcuno che conosce bene la cosa, perché davvero mi sembra strano.
non riesco a capire, inoltre, se al messaggio "Unknonw symbol" debba corrispondere necessariamente la perdita della funzionalità corrispondente, o se è possibile che la stessa sia recuperata successivamente, quando si
rigenerino le condizioni per ritrovare il simbolo.
p.s.: se può essere importante, ho fato attenzione a collocare la System.map nella cartella di boot. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
devilheart l33t
Joined: 17 Mar 2005 Posts: 848 Location: Villach, Austria
|
Posted: Mon Nov 09, 2009 2:59 pm Post subject: |
|
|
c'è un motivo particolare per cui usi quei moduli? se è una cosa di cui hai sempre bisogno, non fai prima a compilarli built-in? |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Mon Nov 09, 2009 9:10 pm Post subject: |
|
|
devilheart wrote: | c'è un motivo particolare per cui usi quei moduli? se è una cosa di cui hai sempre bisogno, non fai prima a compilarli built-in? |
non lo so con esattezza. bisognerebbe fare dei conti e decidere se, nel mio caso, è preferibile usare i moduli o compilarli built-in.
ma questo non eliminerebbe il problema. io ho bisogno di capire con precisione il modo giusto di caricare un modulo nella initramfs e di comprendere le esatte conseguenze di un caricamento riuscito, ma con un messaggio di errore.
quello che sto facendo sono delle immagini squashfs che devono partire, teoricamente, su ogni hardware.
in particolare sia da usb, sia da rete, con software distribuito via nfs.
al di là del modulo ehci_hcd (che effettivamente potrei compilare built-in) potrebbe presentarsi in qualunque momento la necessità di caricare un modulo imprevisto (riconosciuto da pcimodules).
mi turba poi questo fatto di veder sparire i messaggi di errore quando il caricamento, anziché nella fase di initramfs, avviene nella fase finale del boot.
è proprio una cosa che va contro il mio modo di pensare alle dipendenze tra kernel e sistema. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
devilheart l33t
Joined: 17 Mar 2005 Posts: 848 Location: Villach, Austria
|
Posted: Thu Nov 12, 2009 9:21 pm Post subject: |
|
|
a volte gli unknown symbol saltano fuori quando non è stato lanciato depmod. sarebbe interessante sapere esattamente quali simboli sono sconosciuti |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Fri Nov 13, 2009 1:21 pm Post subject: |
|
|
effettivamente, seguendo depmod nella initrd il problema dei simboli sconosciuti scompare.
devo ancora chiarire un paio di cose.
prima di tutto, ho notato che, all'interno della initrd, il comando depmod non produce un file chiamato /lib/modules/<versione del kernel>/modules.dep ma uno con l'estensione .bb :
/lib/modules/<versione del kernel>/modules.dep.bb
non escludo di avere utilizzato inavvertitamente il depmod di busybox, anziché quello di /sbin/depmod (farò la verifica successivamente).
per il momento, però, però me la sono cavata copiando modules.dep.bb in modules.dep
sto pensando che il problema nasca dal fatto che compilo il kernel in un chroot a 32 da una installazione a 64, che utilizza una versione differente (2.6.30-gentoo-r6 anziché 2.6.31-gentoo-r5) con una configurazione personalizzata.
è la seconda in pochi giorni che mi imbatto in un problema legato alla compilazione del kernel in chroot. lascio aperto il thread nella speranza che qualcuno sappia indicare un modo per compilare correttamente il kernel in chroot. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Fri Nov 13, 2009 8:01 pm Post subject: |
|
|
adesso è proprio strano.
i moduli sono a posto solo se uso la versione di depmod fornita da busybox e inclusa nella initramfs (e rinomino il file modules.dep.bb in modules.dep).
se includo nella initramfs la versione di depmod estratta dal kernel i simboli non quagliano.
posto solo una piccola parte degli errori ricevuti:
Code: |
cloc3@gentoo-live ~ $ dmesg|grep Unknown|wc -l
197
cloc3@gentoo-live ~ $ dmesg|grep Unknown|head -n22
[ 9.622535] usb_storage: Unknown symbol usb_alloc_urb
[ 9.631636] usb_storage: Unknown symbol usb_free_urb
[ 9.640837] usb_storage: Unknown symbol usb_storage_usb_ids
[ 9.649979] usb_storage: Unknown symbol usb_register_driver
[ 9.658865] usb_storage: Unknown symbol usb_sg_init
[ 9.667559] usb_storage: Unknown symbol usb_sg_cancel
[ 9.675924] usb_storage: Unknown symbol usb_reset_device
[ 9.684219] usb_storage: Unknown symbol usb_submit_urb
[ 9.692857] usb_storage: Unknown symbol usb_control_msg
[ 9.701071] usb_storage: Unknown symbol usb_usual_ignore_device
[ 9.709280] usb_storage: Unknown symbol usb_usual_clear_present
[ 9.717520] usb_storage: Unknown symbol usb_deregister
[ 9.725489] usb_storage: Unknown symbol usb_lock_device_for_reset
[ 9.733541] usb_storage: Unknown symbol usb_usual_check_type
[ 9.741422] usb_storage: Unknown symbol usb_unlink_urb
[ 9.749363] usb_storage: Unknown symbol usb_kill_urb
[ 9.756837] usb_storage: Unknown symbol usb_buffer_free
[ 9.764119] usb_storage: Unknown symbol usb_reset_endpoint
[ 9.771207] usb_storage: Unknown symbol usb_sg_wait
[ 9.777882] usb_storage: Unknown symbol usb_buffer_alloc
[ 9.784214] usb_storage: Unknown symbol usb_usual_set_present
[ 9.933405] usbhid: Unknown symbol hid_output_report
|
_________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|