diff options
| author | Alexander Kabaev <kan@FreeBSD.org> | 2013-01-19 03:19:39 +0000 |
|---|---|---|
| committer | Alexander Kabaev <kan@FreeBSD.org> | 2013-01-19 03:19:39 +0000 |
| commit | e15f85e71cb951ce5af148b9cd1fd155fcf3cbf5 (patch) | |
| tree | e970e050939adc2f9dabd22c7a4a9404d735d015 /sys/dev/usb/storage | |
| parent | 850e744187a6784353d7628d2d5a119dcb834f75 (diff) | |
Notes
Diffstat (limited to 'sys/dev/usb/storage')
| -rw-r--r-- | sys/dev/usb/storage/umass.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/dev/usb/storage/umass.c b/sys/dev/usb/storage/umass.c index 078594045fdc..a7feea741057 100644 --- a/sys/dev/usb/storage/umass.c +++ b/sys/dev/usb/storage/umass.c @@ -2602,9 +2602,13 @@ umass_cam_sense_cb(struct umass_softc *sc, union ccb *ccb, uint32_t residue, } } else { xpt_freeze_devq(ccb->ccb_h.path, 1); - ccb->ccb_h.status = CAM_SCSI_STATUS_ERROR - | CAM_AUTOSNS_VALID | CAM_DEV_QFRZN; - ccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; + if (key >= 0) { + ccb->ccb_h.status = CAM_SCSI_STATUS_ERROR + | CAM_AUTOSNS_VALID | CAM_DEV_QFRZN; + ccb->csio.scsi_status = SCSI_STATUS_CHECK_COND; + } else + ccb->ccb_h.status = CAM_AUTOSENSE_FAIL + | CAM_DEV_QFRZN; } xpt_done(ccb); break; |
