Re: [linux-usb-devel] [PATCH] base/class.c: prevent ooops due toinsert/remove race (v3)

From: Greg KH
Date: Thu Nov 29 2007 - 15:10:16 EST


On Thu, Nov 29, 2007 at 03:01:48PM -0500, Mark Lord wrote:
> 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.

Incompatibilities in the 2.4.24-rc tree? Have they been reported so
that they can be fixed?

I'll hold off on adding this patch for now.

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/