libata-core: Allow longer timeout for drive spinup from PUIS
authorDamien Le Moal <damien.lemoal@hgst.com>
Mon, 4 Apr 2016 16:17:09 +0000 (12:17 -0400)
committerTejun Heo <tj@kernel.org>
Mon, 4 Apr 2016 16:17:09 +0000 (12:17 -0400)
commit974e0a4537f556867483f493c7f67ccdcb7fc504
tree44ec7451b86d0778c7a2b4b4a7ba5eb558f6bf39
parentd991c872ac7ffaacc4df93efbfbcb4189cee6440
libata-core: Allow longer timeout for drive spinup from PUIS

When spinning up a drive from powered on standby mode (PUIS),
SETFEATURES_SPINUP is executed with the default timeout used
for any SETFEATURES subcommand, that is 5+10 seconds. The
total 15s is too short for some drives to complete spinup
(e.g. drives with a large indirection table stored on media),
resulting in ata_dev_read_id to fail twice on the execution
of SETFEATURES_SPINUP. For this feature, allow a larger
default timeout of 30 seconds. However, in the same spirit
as with the timeout of other feature subcommands, do not
ignore ata_probe_timeout if it is set).

Signed-off-by: Damien Le Moal <damien.lemoal@hgst.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/ata/libata-core.c
include/linux/ata.h