On Fri, Jul 18, 2003, James Courtier-Dutton <[EMAIL PROTECTED]> wrote: > See attached file for details. > Description: Kernel oops when unplugging the usb cable of an active usb > device. > It has some explanations of the "uhci.c-oops" attachment, together with > extract from the source code identifying the oops position, together > with the ksymoops output from the oops. > > Can anyone help? > The reason I need this fixed is that there are certain audio devices out > there that disconnect themselves from the usb bus without the user > knowing, so it is up to the kernel to remove the device from it's tables > gracefully without oops. [snip] > /* Walk the list of pending URB's to see which ones completed */ > spin_lock(&uhci->urb_list_lock); > head = &uhci->urb_list; > tmp = head->next; > while (tmp != head) { > struct urb *urb = list_entry(tmp, struct urb, urb_list); > > /* THIS IS WHERE THE OOPS HAPPENS!!! */ > tmp = tmp->next; /* THIS IS WHERE THE OOPS HAPPENS!!! */ > > /* Checks the status and does all of the magic necessary */ > uhci_transfer_result(uhci, urb); > } > spin_unlock(&uhci->urb_list_lock); [snip] > Unable to handle kernel paging request at virtual address 5a5a5a5a [snip]
Something freed the memory for the URB before it was unlinked. My first inclination is to point the finger at the ALSA USB audio driver. JE ------------------------------------------------------- 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/345/0 _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel