diff options
author | Ed L. Cashin <ecashin@coraid.com> | 2006-02-07 11:37:24 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2006-03-23 22:01:57 -0800 |
commit | 9d41965b783474dba9fcf3eb02e5eb60540e6ff6 (patch) | |
tree | 1780a39793a83087aaa3b2ea9db1ddd653d875d1 /drivers/block | |
parent | 5dc401ee74c5d6a24867acd8302c55da9ae4f0ce (diff) | |
download | lwn-9d41965b783474dba9fcf3eb02e5eb60540e6ff6.tar.gz lwn-9d41965b783474dba9fcf3eb02e5eb60540e6ff6.zip |
[PATCH] aoe [2/3]: don't request ATA device ID on ATA error
On an ATA error response, take the device down instead of
sending another ATA device identify command.
Signed-off-by: "Ed L. Cashin" <ecashin@coraid.com>
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/aoe/aoecmd.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/block/aoe/aoecmd.c b/drivers/block/aoe/aoecmd.c index 207aabcd1f4e..39da28d344fe 100644 --- a/drivers/block/aoe/aoecmd.c +++ b/drivers/block/aoe/aoecmd.c @@ -517,6 +517,8 @@ aoecmd_ata_rsp(struct sk_buff *skb) ahout = (struct aoe_atahdr *) (f->data + sizeof(struct aoe_hdr)); buf = f->buf; + if (ahout->cmdstat == WIN_IDENTIFY) + d->flags &= ~DEVFL_PAUSE; if (ahin->cmdstat & 0xa9) { /* these bits cleared on success */ printk(KERN_CRIT "aoe: aoecmd_ata_rsp: ata error cmd=%2.2Xh " "stat=%2.2Xh from e%ld.%ld\n", @@ -549,7 +551,6 @@ aoecmd_ata_rsp(struct sk_buff *skb) return; } ataid_complete(d, (char *) (ahin+1)); - d->flags &= ~DEVFL_PAUSE; break; default: printk(KERN_INFO "aoe: aoecmd_ata_rsp: unrecognized " |