[SCSI] Fix spurious request sense in error handling
authorJames Bottomley <JBottomley@Parallels.com>
Fri, 28 Mar 2014 17:50:17 +0000 (10:50 -0700)
committerJames Bottomley <JBottomley@Parallels.com>
Mon, 21 Apr 2014 21:27:05 +0000 (14:27 -0700)
commitd555a2abf3481f81303d835046a5ec2c4fb3ca8e
treed8480a2660cfd66eaeb8f0ad416551726947c48a
parent68c03d9193f55dad93036f439b94912c5003a173
[SCSI] Fix spurious request sense in error handling

We unconditionally execute scsi_eh_get_sense() to make sure all failed
commands that should have sense attached, do.  However, the routine forgets
that some commands, because of the way they fail, will not have any sense code
... we should not bother them with a REQUEST_SENSE command.  Fix this by
testing to see if we actually got a CHECK_CONDITION return and skip asking for
sense if we don't.

Tested-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/scsi_error.c