Johannes Erdfelt <[EMAIL PROTECTED]> writes:
> On Sat, Jan 05, 2002, Peter Osterlund <[EMAIL PROTECTED]> wrote:
> > On Sat, 5 Jan 2002, Johannes Erdfelt wrote:
> > >
> > > Did you say this is reproducible?
> >
> > No, I have only seen this once, so maybe we should stop worrying about it
> > for now. At least, quite a few things were found while searching for the
> > problem, so I don't think the effort has been wasted.
>
> Yeah. Without a way to reproduce it and some of the logs gone, it's
> gonna be tough.
>
> Hopefully, one of those patches will fix the problem. If not, we'll hear
> from you again I guess :)
OK, the good news is that it did happen again, this time with kernel
2.4.18-pre1. The bad news is that it happened because my CDRW writer
broke. Anyway, this time I had serial console logging active, and
immediately before the oops/panic, this was logged:
usb_control/bulk_msg: timeout
usb-uhci.c: interrupt, status 2, frame# 499
Maybe the usb layer timeout is exactly equal to the drive's internal
timeout. Immediately after printing the timeout msg, the code in usb.c
calls usb_unlink_urb(). If an interrupt occurs while inside that
function, and the interrupt routine also decides to call
usb_unlink_urb(), doesn't that have the potential to seriously mess
things up?
Here is the new oops, it looks very similar to the first one.
usb_control/bulk_msg: timeout
usb-uhci.c: interrupt, status 2, frame# 499
Unable to handle kernel NULL pointer dereference at virtual address 0000000c
c01281ee
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c01281ee>] Not tainted
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010046
eax: 02bdcc80 ebx: 6f732e78 ecx: 00000000 edx: 00000000
esi: 00000000 edi: 00000206 ebp: 00000000 esp: c135be7c
ds: 0018 es: 0018 ss: 0018
Process hotplug (pid: 1085, stackpage=c135b000)
Stack: c3cd03c0 6f732e78 c3cd03e0 c11e12e0 c4817f6f 6f732e78 00000000 00000001
ffffff92 c3cd03c0 c3bde200 00000000 c3bde200 c3bde200 c1145e20 00000000
c3bde200 c48171c2 c3bde200 c3bde200 00000000 c48288a5 c3bde200 00000000
Call Trace: [<c4817f6f>] [<c48171c2>] [<c48288a5>] [<c4828981>] [<c01103fa>]
[<c01080ba>] [<c010823d>] [<c011bf5d>] [<c0106d03>]
Code: 8b 41 0c 29 c3 89 d8 f7 76 18 89 c3 8b 41 14 89 44 99 18 89
>>EIP; c01281ee <kfree+2e/a0> <=====
Trace; c4817f6f <[usbcore]usb_destroy_configuration+19f/210>
Trace; c48171c2 <[usbcore]usb_free_dev+22/50>
Trace; c48288a5 <[usb-uhci]process_urb+1e5/200>
Trace; c4828981 <[usb-uhci]uhci_interrupt+c1/130>
Trace; c01103fa <do_page_fault+19a/4f0>
Trace; c01080ba <handle_IRQ_event+3a/70>
Trace; c010823d <do_IRQ+6d/b0>
Trace; c011bf5d <sys_rt_sigprocmask+15d/1d0>
Trace; c0106d03 <system_call+33/40>
Code; c01281ee <kfree+2e/a0>
00000000 <_EIP>:
Code; c01281ee <kfree+2e/a0> <=====
0: 8b 41 0c mov 0xc(%ecx),%eax <=====
Code; c01281f1 <kfree+31/a0>
3: 29 c3 sub %eax,%ebx
Code; c01281f3 <kfree+33/a0>
5: 89 d8 mov %ebx,%eax
Code; c01281f5 <kfree+35/a0>
7: f7 76 18 div 0x18(%esi),%eax
Code; c01281f8 <kfree+38/a0>
a: 89 c3 mov %eax,%ebx
Code; c01281fa <kfree+3a/a0>
c: 8b 41 14 mov 0x14(%ecx),%eax
Code; c01281fd <kfree+3d/a0>
f: 89 44 99 18 mov %eax,0x18(%ecx,%ebx,4)
Code; c0128201 <kfree+41/a0>
13: 89 00 mov %eax,(%eax)
<0>Kernel panic: Aiee, killing interrupt handler!
--
Peter Osterlund - [EMAIL PROTECTED]
http://w1.894.telia.com/~u89404340
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel