[SCSI] qla4xxx: Fix cmd check in qla4xxx_cmd_wait
authorMike Christie <michaelc@cs.wisc.edu>
Tue, 26 Oct 2010 12:45:30 +0000 (05:45 -0700)
committerJames Bottomley <James.Bottomley@suse.de>
Tue, 26 Oct 2010 16:16:56 +0000 (11:16 -0500)
commita1e0063d0c015145946981262f8d5f9758d8a895
treed44f9702da82f9d99cf03238b8a91e0f6ba606d1
parente340c3537239d5b6a2b21d4245c8577d457b0476
[SCSI] qla4xxx: Fix cmd check in qla4xxx_cmd_wait

If the command has timedout then the block layer has called
blk_mark_rq_complete. If qla4xxx_cmd_wait is then called
from qla4xxx_eh_host_reset, we will always fail, because if
the driver calls scsi_done then the the block layer will fail
at blk_complete_request's blk_mark_rq_complete call instead of
calling the normal completion path including the function,
blk_queue_end_tag, which releases the tag.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/qla4xxx/ql4_os.c