Bug 115132

Summary: smartlink modem gives kernel OOPS on i386 laptop
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Andreas Jaeger <aj>
Component: KernelAssignee: Marian Jancar <mjancar>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Blocker    
Priority: P5 - None CC: nadvornik, tiwai
Version: Beta 4   
Target Milestone: ---   
Hardware: Other   
OS: All   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Bug Depends on:    
Bug Blocks: 115366    
Attachments: Patch to fix the segfault of slamr
Fixed slmodemd not to load modules in ALSA mode

Description Andreas Jaeger 2005-09-03 13:19:41 UTC
dmesg just showed:

slamr: module not supported by Novell, setting U taint flag.
slamr: SmartLink AMRMO modem.
general protection fault: 0000 [#1]
Modules linked in: slamr yenta_socket rsrc_nonstatic pcmcia_core iptable_mangle
iptable_nat e1000 i8xx_tco iptable_filter i2c_i801 i2c_core ath_pci
ath_rate_sample wlan ath_hal snd_intel8x0m ip6table_mangle snd_intel8x0
snd_ac97_codec snd_ac97_bus snd_pcm snd_timer snd soundcore snd_page_alloc
ehci_hcd hw_random generic shpchp pci_hotplug ip_conntrack ip_tables uhci_hcd
usbcore ip6table_filter ip6_tables intel_agp agpgart ipv6 parport_pc lp parport
ext3 jbd fan thermal processor piix ide_disk ide_core
CPU:    0
EIP:    0060:[<c01f9b7d>]    Tainted: PF    U VLI
EFLAGS: 00010246   (2.6.13-20050903104622-default)
EIP is at pci_match_device+0x1d/0xb0
eax: ffffffff   ebx: f94b9dc0   ecx: 00000000   edx: dff48800
esi: dff48800   edi: f94baa80   ebp: f7800000   esp: f7801f94
ds: 007b   es: 007b   ss: 0068
Process modprobe (pid: 2486, threadinfo=f7800000 task=f787a570)
Stack: dff48800 c0000000 f94baa80 f91743db f7800000 c0134161 b7c3c008 0805f188
       0805f188 c0102d1b b7c3c008 00080108 0805f188 0805f188 0805f188 bf96e068
       00000080 0000007b c010007b 00000080 ffffe410 00000073 00000246 bf96dfd0
Call Trace:
 [<f91743db>] amrmo_init+0x3b/0x106 [slamr]
 [<c0134161>] sys_init_module+0xa1/0x180
 [<c0102d1b>] sysenter_past_esp+0x54/0x79
Code: c3 8b 43 14 85 c0 75 8e 31 db 89 d8 5b c3 57 56 53 89 c3 8b 40 10 89 d6 e8
61 ff ff ff 85 c0 74 04 5b 5e 5f c3 8b 83 b0 00 00 00 <8b> 08 0f 18 01 90 8d bb
b0 00 00 00 39 c7 75 1c eb 77 90 66 8b
 ACPI: PCI Interrupt Link [LNKF] enabled at IRQ 11
ACPI: PCI Interrupt 0000:02:02.0[A] -> Link [LNKF] -> GSI 11 (level, low) -> IRQ 11
Build date: Sep  3 2005

This is the current kotd.
Comment 1 Andreas Gruenbacher 2005-09-06 16:36:40 UTC
This is inside spin_lock(&drv->dynids.lock), drv being a (struct pci_driver 
*). In the kernel-default build log I see this: 
 
km_smartlink_softmodem/amrmo_init.c:707: warning: passing argument 1 of 
'pci_match_device' from incompatible pointer 
Comment 2 Takashi Iwai 2005-09-06 16:38:57 UTC
pci_match_device() was changed recently.  It should be replaced with
pci_match_id(), instead.

Nevertheless, these drivers should be in /etc/hotplug/blacklist since they are
loaded explicitly in slmodemd init script, anyway.
Comment 3 Takashi Iwai 2005-09-06 16:46:35 UTC
Created attachment 48964 [details]
Patch to fix the segfault of slamr
Comment 4 Takashi Iwai 2005-09-06 16:51:47 UTC
Christian, could you add slamr and slusb to /etc/hotplug/blacklist?

Also, slmodemd init script should be modified not to load slamr and slusb when
$SLMODEM_USE_ALSA is yes.
Comment 5 Andreas Gruenbacher 2005-09-06 16:53:08 UTC
I've submitted this fix, thanks. 
Comment 6 Andreas Gruenbacher 2005-09-06 16:55:11 UTC
(This still leaves comment 4 open.) 
Comment 7 Takashi Iwai 2005-09-06 16:57:45 UTC
Created attachment 48971 [details]
Fixed slmodemd not to load modules in ALSA mode
Comment 8 Takashi Iwai 2005-09-06 16:59:27 UTC
The fixed slmodemd is in comment #7.
Andreas, please replace the file with that.
Comment 9 Christian Zoz 2005-09-06 17:19:25 UTC
Added slamr and slusb to /etc/hotplug/blacklist
Comment 10 Andreas Gruenbacher 2005-09-06 17:31:40 UTC
Okay, fix checked in.