diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-02-26 13:03:22 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-02-26 13:03:22 -0500 |
commit | a4a47bc03fe520e95e0c4212bf97c86545fb14f9 (patch) | |
tree | 2c6597f8db343622ad2eb5ea02509fbf045a2f88 /drivers/usb/storage/usb.c | |
parent | 6ebdc661b608671e9ca572af8bb42d58108cc008 (diff) |
Lower USB storage settling delay to something more reasonable
The five-second delay can be rather annoying, and makes the system
appear much less responsive when you connect a USB drive.
It's also not entirely clear that it is needed - the settling delay has
at least historically been an issue on some Apple iPods, for example,
and some devices have been reported to need even more than the old 5s
delay.
But before we penalize them all, let's see how bad it really is. Some
of the reasons for long delays seem to be actual historical kernel bugs
that should probably never have been papered over with a delay in the
first place (there's a Ubuntu bug report for 2.6.20 about a NULL pointer
dereference unless 'delay_use' is 8 or more, for example).
It also looks like some distros have already shipped with delay_use=0,
so the five second default may well be totally historical.
In other words: "Let's see if anybody screams".
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/usb/storage/usb.c')
-rw-r--r-- | drivers/usb/storage/usb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/storage/usb.c b/drivers/usb/storage/usb.c index e9f995486ec1..bbeeb92a2131 100644 --- a/drivers/usb/storage/usb.c +++ b/drivers/usb/storage/usb.c | |||
@@ -78,7 +78,7 @@ MODULE_AUTHOR("Matthew Dharm <mdharm-usb@one-eyed-alien.net>"); | |||
78 | MODULE_DESCRIPTION("USB Mass Storage driver for Linux"); | 78 | MODULE_DESCRIPTION("USB Mass Storage driver for Linux"); |
79 | MODULE_LICENSE("GPL"); | 79 | MODULE_LICENSE("GPL"); |
80 | 80 | ||
81 | static unsigned int delay_use = 5; | 81 | static unsigned int delay_use = 1; |
82 | module_param(delay_use, uint, S_IRUGO | S_IWUSR); | 82 | module_param(delay_use, uint, S_IRUGO | S_IWUSR); |
83 | MODULE_PARM_DESC(delay_use, "seconds to delay before using a new device"); | 83 | MODULE_PARM_DESC(delay_use, "seconds to delay before using a new device"); |
84 | 84 | ||