diff options
author | Tejun Heo <tj@kernel.org> | 2008-07-31 09:08:02 +0200 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2008-08-22 08:19:41 +0200 |
commit | 5dbfc9cb59d4ad75199949d7dd8a8c6d7bc518df (patch) | |
tree | b0574dea3b5bfcf9418abb1a08bfe24a77fbcd37 /arch/m68k/kernel/ints.c | |
parent | libata: fix EH action overwriting in ata_eh_reset() (diff) | |
download | linux-5dbfc9cb59d4ad75199949d7dd8a8c6d7bc518df.tar.xz linux-5dbfc9cb59d4ad75199949d7dd8a8c6d7bc518df.zip |
libata: always do follow-up SRST if hardreset returned -EAGAIN
As an optimization, follow-up SRST used to be skipped if
classification wasn't requested even when hardreset requested it via
-EAGAIN. However, some hardresets can't wait for device readiness and
skipping SRST can cause timeout or other failures during revalidation.
Always perform follow-up SRST if hardreset returns -EAGAIN. This
makes reset paths more predictable and thus less error-prone.
While at it, move hardreset error checking such that it's done right
after hardreset is finished. This simplifies followup SRST condition
check a bit and makes the reset path easier to modify.
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'arch/m68k/kernel/ints.c')
0 files changed, 0 insertions, 0 deletions