[pvrusb2] Segmentation fault when unloading module

Andreas Korinek andreas.korinek at wizards-of-chemistry.net
Mon Oct 2 04:16:03 CDT 2006


Hi,

I just got the following kernel fault when unloading (modprobe -r pvrusb2) the 
pvrusb2 module:

usbcore: deregistering driver pvrusb2
pvrusb2: unregistering device video0 [mpeg]
----------- [cut here ] --------- [please bite here ] ---------
Kernel BUG at include/linux/mm.h:300
invalid opcode: 0000 [1]
CPU 0
Modules linked in: pvrusb2 cx2341x videodev v4l1_compat tveeprom snd_pcm_oss 
snd_mixer_oss usbhid tuner saa7115 msp3400 cpufreq_performance 
cpufreq_ondemand thermal powernow_k8 freq_table processor button ac 
usb_storage v4l2_common nvidia snd_ice1724 snd_ice17xx_ak4xxx snd_ac97_codec 
snd_ac97_bus snd_ak4114 snd_pcm snd_timer snd_page_alloc snd_ak4xxx_adda 
snd_mpu401_uart snd_rawmidi ohci_hcd snd ehci_hcd forcedeth i2c_nforce2 
usbcore soundcore
Pid: 21547, comm: modprobe Tainted: P      2.6.18-gentoo #2
RIP: 0010:[<ffffffff80228f7f>]  [<ffffffff80228f7f>] __free_pages+0x7/0x2a
RSP: 0018:ffff810069779d80  EFLAGS: 00010246
RAX: 0000000000000000 RBX: ffff810077444080 RCX: ffff810077444080
RDX: ffff810001000000 RSI: 0000000000000001 RDI: ffff810002582050
RBP: ffff81007e14f000 R08: 00007fffa1c4e840 R09: 00007fffa1c4e840
R10: ffff81005c765c30 R11: 0000000000000282 R12: ffff81007e14f258
R13: ffffffff8860e3f8 R14: 0000000000000003 R15: 00007fffa1c4e840
FS:  00002ae7092b8ae0(0000) GS:ffffffff804d4000(0000) knlGS:00000000f445eba0
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 00007fffb10e7fc8 CR3: 0000000038f92000 CR4: 00000000000006e0
Process modprobe (pid: 21547, threadinfo ffff810069778000, task 
ffff81006de0d080)
Stack:  ffffffff8024fdac ffff810077444080 ffffffff8027c260 ffff810066ec5cc0
 ffffffff886381bc ffff81006f35ea58 ffff81007cb26070 ffff81007e14f258
 ffffffff803888a1 ffffffff8860e3f8 ffff81007cb26000 ffff81007c4cb000
Call Trace:
 [<ffffffff8024fdac>] free_task+0x12/0x22
 [<ffffffff8027c260>] kthread_stop+0x4a/0x77
 [<ffffffff886381bc>] :msp3400:msp_detach+0x25/0x54
 [<ffffffff803888a1>] i2c_del_adapter+0x121/0x208
 [<ffffffff885f1098>] :pvrusb2:pvr2_i2c_core_done+0x16/0x22
 [<ffffffff885eefc8>] :pvrusb2:pvr2_hdw_destroy+0x7c/0x11f
 [<ffffffff885f58df>] :pvrusb2:pvr2_context_destroy+0x12/0x47
 [<ffffffff885f4505>] :pvrusb2:pvr_disconnect+0x3d/0x5e
 [<ffffffff8800a210>] :usbcore:usb_unbind_interface+0x45/0x83
 [<ffffffff803506c6>] __device_release_driver+0x75/0x91
 [<ffffffff80350a05>] driver_detach+0x84/0xdf
 [<ffffffff8034fd5c>] bus_remove_driver+0x6d/0x90
 [<ffffffff80350a95>] driver_unregister+0xd/0x16
 [<ffffffff8800a104>] :usbcore:usb_deregister+0x88/0x90
 [<ffffffff80280c45>] sys_delete_module+0x1a7/0x1d6
 [<ffffffff80252386>] system_call+0x7e/0x83


Code: 0f 0b 68 fe bd 3e 80 c2 2c 01 ff 4f 08 0f 94 c0 84 c0 74 0e
RIP  [<ffffffff80228f7f>] __free_pages+0x7/0x2a
 RSP <ffff810069779d80>


I wanted to reload the module, because xawtv exited and dmesg showed this:


pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (read 0x10/0x7e)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (read 0x10/0x7e)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (read 0x10/0x7e)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (write 0x12/0x00)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (write 0x12/0x00)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (write 0x12/0x00)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (write 0x12/0x07)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (write 0x12/0x07)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (write 0x12/0x07)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (write 0x12/0x01)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (write 0x12/0x01)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (write 0x12/0x01)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (write 0x12/0x02)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (write 0x12/0x02)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (write 0x12/0x02)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (write 0x12/0x03)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (write 0x12/0x03)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (write 0x12/0x03)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (write 0x12/0x04)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (write 0x12/0x04)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (write 0x12/0x04)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #0 (write 0x12/0x13)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #1 (write 0x12/0x13)
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: I/O error #2 (write 0x12/0x13)
msp3400 2-0040: giving up, resetting chip. Sound will go off, sorry folks :-|
pvrusb2: Attempted to execute control transfer when device not ok
msp3400 2-0040: chip reset failed

I am using the latest snapshot with kernel 2.6.18-gentoo


More information about the pvrusb2 mailing list