libata: Ignore spurious PHY event on LPM policy change
authorGabriele Mazzotta <gabriele.mzt@gmail.com>
Sat, 25 Apr 2015 17:52:37 +0000 (19:52 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 6 Jun 2015 06:19:58 +0000 (23:19 -0700)
commite8d1999916842abf8540735ace775f733cfaa828
tree9ea5cf30fe4304b0dbc84642f459791fd2fba689
parent8d850bbf3e11742927aa500a2dcd121999708246
libata: Ignore spurious PHY event on LPM policy change

commit 09c5b4803a80a5451d950d6a539d2eb311dc0fb1 upstream.

When the LPM policy is set to ATA_LPM_MAX_POWER, the device might
generate a spurious PHY event that cuases errors on the link.
Ignore this event if it occured within 10s after the policy change.

The timeout was chosen observing that on a Dell XPS13 9333 these
spurious events can occur up to roughly 6s after the policy change.

Link: http://lkml.kernel.org/g/3352987.ugV1Ipy7Z5@xps13
Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/ata/libata-core.c
drivers/ata/libata-eh.c
include/linux/libata.h