Tejun Heo wrote: > Hello, > > akpm@xxxxxxxxxxxxxxxxxxxx wrote: >> From: Stuart Hayes <stuart_hayes@xxxxxxxx> >> >> This fixes problems during resume with drives that take longer than >> 1s to be ready. The ATA-6 spec appears to allow 5 seconds for a >> drive to be ready. >> >> On one affected system, this patch changes "PM: resume devices >> took..." message from 17 seconds to 4 seconds, and gets rid of a lot >> of ugly timeout/error messages. > > Can you please attach log for this? Which controller was it? > And the controller is nVidia Corporation MCP79 AHCI Controller (rev b1). >> Without this patch, the libata code moves on after 1s, tries to send >> a soft reset (which the drive doesn't see because it isn't ready) >> which also times out, then an IDENTIFY command is sent to the drive >> which times out, and finally the error handler will try to send >> another hard reset which will finally get things working. > > This adds 5s delays to common detection paths. That said, 1s could > be too short. > >> diff -puN >> include/linux/libata.h~libata-change-drive-ready-wait-after-hard-reset >> -to-5s include/linux/libata.h >> --- >> a/include/linux/libata.h~libata-change-drive-ready-wait-after-hard-res >> et-to-5s +++ a/include/linux/libata.h >> @@ -275,7 +275,7 @@ enum { >> * advised to wait only for the following duration before >> * doing SRST. >> */ >> - ATA_TMOUT_PMP_SRST_WAIT = 1000, >> + ATA_TMOUT_PMP_SRST_WAIT = 5000, > > Okay, it's already merged but this will add a lot of delay to device > probing. I think we better be a bit smarter here. > > Thanks. -- To unsubscribe from this list: 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