se401 oops on rmmod

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Trying again, this time CCing the list, since that's what LWN says to
do.  I'm not subscribed to the list.

2.6.31 oopses during rmmodding of the se401 webcam (Lexington something
in my case).  Oops attached below.  Tainted kernel, nvidia kernel
loaded, but the following bit seems wrong:

First it sets se401->dev to NULL, and then it references se401->dev->dev
Relevant bit excerpted

Also, the website pointed to in the MAINTAINERS file for the se401
driver doesn't exist any more (W:
http://www.chello.nl/~j.vreeken/se401/ )

Thanks,
ale

This under drivers/media/video/se401.c

static void usb_se401_remove_disconnected (struct usb_se401 *se401)
{
        int i;

        se401->dev = NULL;  // here cleared

        for (i=0; i<SE401_NUMSBUF; i++)
                if (se401->urb[i]) {
                        usb_kill_urb(se401->urb[i]);
                        usb_free_urb(se401->urb[i]);
                        se401->urb[i] = NULL;
                        kfree(se401->sbuf[i].data);
                }
        for (i=0; i<SE401_NUMSCRATCH; i++) {
                kfree(se401->scratch[i].data);
        }
        if (se401->inturb) {
                usb_kill_urb(se401->inturb);
                usb_free_urb(se401->inturb);
        }
        dev_info(&se401->dev->dev, "%s disconnected",
se401->camera_name);  // this seems wrong

It wasn't there in 2.6.23.


Oct 25 17:36:49 localhost kernel: usb 2-2: USB disconnect, address 3
Oct 25 17:36:49 localhost kernel: BUG: unable to handle kernel NULL
pointer dereference at 0000006c
Oct 25 17:36:49 localhost kernel: IP: [<f822112d>]
usb_se401_remove_disconnected+0x8d/0xf0 [se401]
Oct 25 17:36:49 localhost kernel: *pde = 00000000 
Oct 25 17:36:49 localhost kernel: Oops: 0000 [#1] PREEMPT SMP 
Oct 25 17:36:49 localhost kernel: last sysfs
file: /sys/devices/pci0000:00/0000:00:1e.0/0000:01:00.0/net/eth0/statistics/collisions
Oct 25 17:36:49 localhost kernel: Modules linked in: iptable_mangle
iptable_nat nf_nat xt_limit nf_conntrack_ipv4 nf_defrag_ipv4 xt_state
ipt_addrtype xt_string xt_owner xt_multiport xt_mark xt_iprange
xt_conntrack xt_NFQUEUE xt_MARK xt_CONNMARK nf_conntrack snd_seq_midi
snd_emu10k1_synth snd_emux_synth snd_seq_virmidi snd_seq_midi_emul
snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_pcm_oss
snd_mixer_oss sr_mod snd_emu10k1 snd_rawmidi snd_ac97_codec ac97_bus
snd_pcm snd_seq_device snd_timer snd_page_alloc snd_util_mem nvidia(P)
se401 snd_hwdep snd usbhid bttv ir_common i2c_algo_bit videobuf_dma_sg
soundcore videobuf_core 8139too btcx_risc tveeprom ide_cd_mod 8139cp
emu10k1_gp gameport evdev r8169 mii uhci_hcd
Oct 25 17:36:49 localhost kernel: 
Oct 25 17:36:49 localhost kernel: Pid: 199, comm: khubd Tainted: P
(2.6.31-gentoo-r2 #1) P5PL2
Oct 25 17:36:49 localhost kernel: EIP: 0060:[<f822112d>] EFLAGS:
00010296 CPU: 0
Oct 25 17:36:49 localhost kernel: EIP is at
usb_se401_remove_disconnected+0x8d/0xf0 [se401]
Oct 25 17:36:49 localhost kernel: EAX: 00000000 EBX: 00000200 ECX:
f70002c0 EDX: 00000000
Oct 25 17:36:49 localhost kernel: ESI: f8224598 EDI: f3dbc000 EBP:
f6a12000 ESP: f710ee2c
Oct 25 17:36:49 localhost kernel: DS: 007b ES: 007b FS: 00d8 GS: 00e0
SS: 0068
Oct 25 17:36:49 localhost kernel: Process khubd (pid: 199, ti=f710e000
task=f7064810 task.ti=f710e000)
Oct 25 17:36:49 localhost kernel: Stack:
Oct 25 17:36:49 localhost kernel: c123f956 103e4cb7 f3dbc000 f8225320
103e4cb7 f3e13bc0 f8225320 f3e13bdc
Oct 25 17:36:49 localhost kernel: <0> c1345c40 103e4cb7 f3e13bdc
f8225354 c15b7540 f3e13be4 c12ca2b4 103e4cb7
Oct 25 17:36:49 localhost kernel: <0> f3e13bdc f3e13c10 c12ca429
103e4cb7 c15b7540 f3e13bdc c12c96b3 103e4cb7
Oct 25 17:36:49 localhost kernel: Call Trace:
Oct 25 17:36:49 localhost kernel: [<c123f956>] ? kref_put+0x36/0x80
Oct 25 17:36:49 localhost kernel: [<c1345c40>] ? usb_unbind_interface
+0xb0/0x100
Oct 25 17:36:49 localhost kernel: [<c12ca2b4>] ? __device_release_driver
+0x64/0xf0
Oct 25 17:36:49 localhost kernel: [<c12ca429>] ? device_release_driver
+0x29/0x50
Oct 25 17:36:49 localhost kernel: [<c12c96b3>] ? bus_remove_device
+0x83/0xe0
Oct 25 17:36:49 localhost kernel: [<c12c74cb>] ? device_del+0x10b/0x1b0
Oct 25 17:36:49 localhost kernel: [<c1342fe9>] ? usb_disable_device
+0x89/0x120
Oct 25 17:36:49 localhost kernel: [<c133da06>] ? usb_disconnect
+0xb6/0x140
Oct 25 17:36:49 localhost kernel: [<c133e6c0>] ? hub_thread+0x2c0/0x1180
Oct 25 17:36:49 localhost kernel: [<c102cde9>] ? pick_next_task_fair
+0x59/0x120
Oct 25 17:36:49 localhost kernel: [<c102aee3>] ? __wake_up_common
+0x63/0xa0
Oct 25 17:36:49 localhost kernel: [<c1052650>] ?
autoremove_wake_function+0x0/0x60
Oct 25 17:36:49 localhost kernel: [<c133e400>] ? hub_thread+0x0/0x1180
Oct 25 17:36:49 localhost kernel: [<c105227c>] ? kthread+0x8c/0xa0
Oct 25 17:36:49 localhost kernel: [<c10521f0>] ? kthread+0x0/0xa0
Oct 25 17:36:49 localhost kernel: [<c1003ebf>] ? kernel_thread_helper
+0x7/0x18
Oct 25 17:36:49 localhost kernel: Code: 02 00 00 75 e9 8b 87 98 01 00 00
85 c0 74 10 e8 6a 0f 12 c9 8b 87 98 01 00 00 e8 9f 13 12 c9 8b 87 14 01
00 00 8b b7 1c 01 00 00 <8b> 58 6c 83 c0 64 e8 e8 4e 0a c9 89 74 24 0c
89 5c 24 08 89 44 
Oct 25 17:36:49 localhost kernel: EIP: [<f822112d>]
usb_se401_remove_disconnected+0x8d/0xf0 [se401] SS:ESP 0068:f710ee2c
Oct 25 17:36:49 localhost kernel: CR2: 000000000000006c
Oct 25 17:36:49 localhost kernel: ---[ end trace a123c3ef1b3fc410 ]---



--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux