I've done some further work on the problem I reported earlier involving
the Sharp Zaurus and the uhci and usbnet modules.  I'm currently running
2.4.22-rc2 with ACPI (20030813) and swsusp (1.1-rc5) patches.  I can
reproduce the problem with only uhci.o and usbcore.o loaded; the "->"
lines below indicate what I believe are the relevant console/syslog
messages:

modprobe uhci
plug in the zaurus
-> usb.c: USB device 2 (vend/prod 0x4dd/0x8004) is not claimed by any active driver.
unplug the zaurus
-> uhci.c: efe0: host controller halted. very bad
rmmod uhci
-> kmem_cache_destroy: Can't free all objects c158bcd0
-> uhci: not all urb_priv's were freed
modprobe uhci
-> uhci.c: USB Universal Host Controller Interface driver v1.1
-> kernel BUG at slab.c:815!
[stack dump, call trace]

The code in uhci.c, uhci_interrupt() says:
...
if (status & ~(USBSTS_USBINT | USBSTS_ERROR | USBSTS_RD)) {
...
       if ((status & USBSTS_HCH) && !uhci->is_suspended) {
             err("%x: host controller halted. very bad",io_addr);
             /* FIXME: Reset the controller, fix the offending TD */
       }

I tried reset_hc(uhci) here, but clearly that's not enough.  I don't know
how to "fix the offending TD", probably if it were trivial it would
already be done.  I guess there some urb pending which never gets cleared,
then it all falls down upon module removal?

hints, pointers, suggestions, code snippets, patch(es) would be much
appreciated.  I need to be able to rmmod uhci to suspend/resume.


thanks,

rob.





-------------------------------------------------------
This SF.net email is sponsored by: VM Ware
With VMware you can run multiple operating systems on a single machine.
WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines
at the same time. Free trial click here:http://www.vmware.com/wl/offer/358/0
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to