Bug 3248

Summary: insmod from busybox cannot load some modules
Product: Sisyphus Reporter: Sergey Vlasov <vsu>
Component: mkinitrdAssignee: Dmitry V. Levin <ldv>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: blocker    
Priority: P2 CC: led, vsu
Version: unstable   
Hardware: all   
OS: Linux   
Attachments:
Description Flags
busybox-0.60.5-alt-insmod-gplonly.patch
none
busybox-0.60.5-alt-insmod-gplonly.patch none

Description Sergey Vlasov 2003-11-09 22:59:23 MSK
Сейчас наблюдаю на собранном локально 2.4.22-std-up-alt8 (но, похоже, то же
самое наблюдается и с alt7, судя по жалобам):

# modprobe libata

(зависимости ata_piix)

# /sbin/insmod /lib/modules/2.4.22-std-up-alt8/kernel/drivers/scsi/ata_piix.o
/lib/modules/2.4.22-std-up-alt8/kernel/drivers/scsi/ata_piix.o: init_module: No
such device
Hint: insmod errors can be caused by incorrect module parameters, including
invalid IO or IRQ parameters.
      You may find more information in syslog or the output from dmesg


(это нормально - у меня этого устройства действительно нет)

# /lib/mkinitrd/busybox insmod
/lib/modules/2.4.22-std-up-alt8/kernel/drivers/scsi/ata_piix.o
Using /lib/modules/2.4.22-std-up-alt8/kernel/drivers/scsi/ata_piix.o
insmod: unresolved symbol ata_port_disable_R1e519ab5
insmod: unresolved symbol ata_bus_reset_R16906666
insmod: unresolved symbol ata_check_status_pio_Rf90d4961
insmod: unresolved symbol ata_fill_sg_Reff1742c
insmod: unresolved symbol ata_port_stop_R5ed835fe
insmod: unresolved symbol pci_test_config_bits_Reb1c0426
insmod: unresolved symbol ata_tf_read_pio_R57ebb986
insmod: unresolved symbol ata_port_start_R01d65053
insmod: unresolved symbol ata_scsi_detect_R2e7798b2
insmod: unresolved symbol ata_scsi_queuecmd_R2b268a15
insmod: unresolved symbol ata_port_probe_Rf82cbd9e
insmod: unresolved symbol ata_interrupt_R3001830e
insmod: unresolved symbol ata_pci_remove_one_Rb6298761
insmod: unresolved symbol ata_tf_load_pio_R39a41226
insmod: unresolved symbol pata_phy_config_R7a167c32
insmod: unresolved symbol ata_bmdma_start_pio_R82555d05
insmod: unresolved symbol ata_scsi_release_R85732718
insmod: unresolved symbol ata_eng_timeout_Rb4d11386
insmod: unresolved symbol ata_scsi_error_R951597c0
insmod: unresolved symbol ata_pci_init_one_R85fb4d2f
insmod: unresolved symbol ata_exec_command_pio_R9c31f17a

Аналогичная картина наблюдается и при выполнении этого insmod из initrd - со
всеми вытекающими последствиями: модуль не грузится, диски недоступны.

mkinitrd-2.8.9-alt2

Возможно, причина в этом:

$ grep ata_port_disable_R1e519ab5 /proc/ksyms
e4ed7070 GPLONLY_ata_port_disable_R1e519ab5     [libata]

(в libata используется EXPORT_SYMBOL_GPL)
Comment 1 Dmitry V. Levin 2003-11-09 23:27:44 MSK
Created attachment 310 [details]
busybox-0.60.5-alt-insmod-gplonly.patch
Comment 2 Dmitry V. Levin 2003-11-09 23:32:57 MSK
Created attachment 311 [details]
busybox-0.60.5-alt-insmod-gplonly.patch
Comment 3 Dmitry V. Levin 2003-11-09 23:34:19 MSK
Try to rebuild mkinitrd with attached patch; it should work. 
Comment 4 Sergey Vlasov 2003-11-09 23:43:48 MSK
Yes, it works with this patch (did not try real initrd yet - tested as
/lib/mkinitrd/busybox insmod).
Comment 5 Dmitry V. Levin 2003-11-09 23:48:20 MSK
Fixed in mkinitrd-2.8.9-alt3. 
Comment 6 Sergey Vlasov 2003-11-14 15:11:36 MSK
it works now