Mark Lord wrote:
Jeff Garzik wrote:
Jens Axboe wrote:
index b80d2e7..80fb1f9 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -742,7 +742,7 @@ static inline u8 ata_busy_wait(struct at
static inline u8 ata_wait_idle(struct ata_port *ap)
{
- u8 status = ata_busy_wait(ap, ATA_BUSY | ATA_DRQ, 1000);
+ u8 status = ata_busy_wait(ap, ATA_BUSY | ATA_DRQ, 200000);
Ouch. That will slow down boot for a lot of otherwise-untouched users,
Really? If a drive claims to be BUSY, then it shouldn't accept a new
command.
But yes, this may be a bit too mainline to risk at this point,
given controller quirks and the like that may be spoofing the status.
All the other patches only affected ata_piix users using suspend, which
is a very small subset. That's why we could be cavalier about the
delay. Plus, I would expect resume to require a higher-than-normal delay.
In contrast, the above patch affects most users, on all platforms.
Cases which would previously error out in 10ms now take much longer to
error out. Slows boot, slows multi-path, and other fun stuff.
Jeff
-
: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html