Re: [PATCH] base/class.c: prevent ooops due to insert/remove race (v3)
Mark Lord <[email protected]>
| Newsgroups | gmane.linux.usb.devel,gmane.linux.kernel |
|---|---|
| Message-ID | <[email protected]> |
Alan Stern wrote: > On Thu, 29 Nov 2007, Mark Lord wrote: > >> Mark Lord wrote: >>> .. >>> >>> While doing insert/remove (quickly) tests on USB, >>> I managed to trigger an Oops on 2.6.23.8 on a call >>> to strlen() in make_class_name(). > > Does this oops occur under 2.6.24? The SCSI async scanning code was > changed between 2.6.23 and 2.6.24, in a way intended to prevent exactly > this sort of thing. > >> And below is a "prevented Oops", courtesy of the patch. >> The next bug to fix is whereever the code resides that >> repeatedly continues to flog the unplugged device >> after the test, despite SCSI returning host_byte=DID_NO_CONNECT. > > It has probably already been fixed. > > Besides, it's not the flogging an unplugged device that causes the > oops. It's trying to unregister a device that was never registered in > the first place. .. Well, duh, I kinda knew that already, thanks. ;) But the flogging continues multiple times per second until the system is shutdown, so it is "the next bug to fix". Unless the 2.6.24 code already has that one taken care of. This machine doesn't run 2.6.24 (yet) due to other incompatibilities. Cheers ------------------------------------------------------------------------- SF.Net email is sponsored by: The Future of Linux Business White Paper from Novell. From the desktop to the data center, Linux is going mainstream. Let it simplify your IT future. http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4 _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel