On Fri, 3 Mar 2006, Andrew Morton wrote:

> The kernel is 2.6.16-rc5-mm2 plus a little bit.  I've got `reboot -f' in
> rc.local (don't ask) and after maybe 200 reboots I hit a USB oops.
...
> The faulting line is here:
> 
>       if (i == 0 && desc->bInterfaceClass == USB_CLASS_COMM

I suppose it's beyond the realm of folly to ask if any of these problems 
are at all reproducible?


On Sat, 4 Mar 2006, Andrew Morton wrote:

> hmm, I suspect we have a memory scribble happening here.
> 
> BUG: unable to handle kernel NULL pointer dereference at virtual address 
> 00000015
>  printing eip:
> *pde = 00000000
> Oops: 0000 [#1]
> last sysfs file: /devices/pci0000:00/0000:00:1d.7/usb1/idVendor
> Modules linked in: nvram ide_cd cdrom ipw2200 ohci1394 ieee80211 sg uhci_hcd 
> ieee1394 ehci_hcd joydev ieee80211_crypt snd_hda_intel snd_hda_codec i2c_i801 
> i2c_core snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device 
> snd_pcm_oss snd_mixer_oss snd_pcm snd_timer snd soundcore snd_page_alloc piix 
> hw_random generic ext3 jbd ide_disk ide_core
> CPU:    0
> EIP:    0060:[<f8c39e25>]    Not tainted VLI
> EFLAGS: 00010002   (2.6.16-rc5-mm2 #277) 
> EIP is at uhci_result_common+0xf/0x128 [uhci_hcd]
...
> The fault was here:
> 
> static int uhci_result_common(struct uhci_hcd *uhci, struct urb *urb)
> {
>       struct urb_priv *urbp = urb->hcpriv;
> 
> And offsetof(urb, hcpriv) = 4.  Which means that `urb' = -17, which is
> ERR_PTR(-EEXIST).
> 
> Is it possible that we're missing an IS_ERR() somewhere?

No.  That would be too easy!


On Sat, 4 Mar 2006, Andrew Morton wrote:

> Another couple.
> 
> The faulting address in the second oops (which is always less interesting)
> is ascii "UCT=".  I don't recognise that.
> 
> Why does my "last sysfs file" have "usb5" in it?  After the thing boots and
> gets to a login prompt, I have no usb5??

Beats me.  Space aliens?  Little green men?  Faulty RAM?  If you have
fewer than 5 USB controllers, and you don't remove and then reload the
controller drivers, then nothing should ever construct that "usb5" string.

> BUG: unable to handle kernel paging request at virtual address 306373e4
>  printing eip:
> *pde = 00000000
> Oops: 0000 [#1]
> last sysfs file: /devices/pci0000:00/0000:00:1d.7/usb5/idVendor
> Modules linked in: nvram ide_cd cdrom ipw2200 snd_hda_intel snd_hda_codec 
> ieee80211 ohci1394 ieee1394 ieee80211_crypt snd_seq_dummy sg uhci_hcd 
> ehci_hcd snd_seq_oss joydev snd_seq_midi_event snd_seq snd_seq_device 
> snd_pcm_oss snd_mixer_oss snd_pcm snd_timer snd soundcore snd_page_alloc piix 
> i2c_i801 i2c_core hw_random generic ext3 jbd ide_disk ide_core
> CPU:    0
> EIP:    0060:[<c01bd696>]    Not tainted VLI
> EFLAGS: 00010216   (2.6.16-rc5-mm2 #277) 
> EIP is at kref_put+0x12/0x70


I haven't tried running 2.6.16-rc5-mm2, with or without extensions.  If 
you use that kernel with nothing else added, do the problems still occur?
  
The distribution of errors you've found definitely suggests some sort
of memory overwriting.  But whether the guilty code is part of the USB
subsystem or somewhere else is anyone's guess.

If these faults occur quickly and often, a git-bisect search might be the 
best way to find the answer.

Alan Stern



-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to