On Thu, Mar 20, 2003 at 11:32:45AM -0500, Alan Stern wrote: > Requiring every driver which might be bound to an interface that is part > of a storage device to avoid GFP_KERNEL feels too draconian to me. Maybe > it would be better simply to remove the usb_reset_device() call from > usb-storage, or to implement it differently. For example, usb-storage's > function for handling an emulated SCSI bus reset (which is where > usb_reset_device() gets called) might mark the device as bad, fail the > reset call, fail all following SCSI calls, disconnect itself (telling SCSI > that the device is gone), and then reset the device and be re-probed. > I'm not really recommending this, but at least it would mean any other > drivers bound to that same device wouldn't be forced to avoid ever waiting > on I/O.
I've actually been thinking along those lines, too... but, given the new design where devices aren't 'remembered', doing the above would disconnect a device and create a new one (as seen by the user). It kinda defeats the entire purpose of the reset (which is to try to get back to a good state). My guess is that we just have to make a decision on reset-recovery: Is it worth it? If not, let's just implement Alan's suggestion and be done with it. Matt -- Matthew Dharm Home: [EMAIL PROTECTED] Maintainer, Linux USB Mass Storage Driver NYET! The evil stops here! -- Pitr User Friendly, 6/22/1998
pgp00000.pgp
Description: PGP signature