On Sat, 18 Sep 2004 15:57:42 -0600 "Nix N. Nix" <[EMAIL PROTECTED]> wrote:
> On Sat, 2004-09-18 at 09:10, Alan Stern wrote: > > At any rate, this oops occurs whenever a USB host controller driver is > > unloaded while one of the devices it controls is still open. Your drive > > was still open because it was mounted, and when the shutdown scripts > > unmounted it the oops was triggered. > > Correct me if I'm wrong: If one of the controlled devices is still open, > shouldn't the reference count on the modules involved (including the > appropriate hcd) be incremented to prevent rmmod ? I don't mean to say > that as soon as I connect the drive it should be impossible to rmmod > ehci_hcd. [] Such a case can be made, but this is not how Linux USB stack is designed. Its HC drivers are removable regardless of its users. The USB core is supposed to isolate users. An exception is when an URB is in transit, in which case the HC driver cannot be removed. However, if rmmod for an HCD causes oopses, it's a bug. What Alan described is such bug. It is not supposed to happen despite HCDs being unloadable. In 2.4 at least, there is a long standing bug in usb-storage where unloading it (not an HCD) causes an oops if a CBI transport device was connected. The usb-storage forgets to unlink the interrupt URB and when a callback occurs, the system oopses in an interrupt. It's an example of a similar bug, which everyone knows and nobody has fixed so far. There's not much interest in helping people unloading modules, if they cannot help themselves. I'm very open for patches in this area, but I'm not going to go in and fix this. Your case might be similar. This is only my personal view though. It may be erroneous. -- Pete ------------------------------------------------------- This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170 Project Admins to receive an Apple iPod Mini FREE for your judgement on who ports your project to Linux PPC the best. Sponsored by IBM. Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
