summaryrefslogtreecommitdiffstats
path: root/sys/cam
diff options
context:
space:
mode:
authorken <ken@FreeBSD.org>2001-09-03 05:04:47 +0000
committerken <ken@FreeBSD.org>2001-09-03 05:04:47 +0000
commit57634a38ed176c8088bfccfe76ad0f159d77686f (patch)
treebe9adb2de84da5770ad049b8a721cd856bff96b9 /sys/cam
parent5e41b2c07ef6d079a583808f0b617dd6e742bc76 (diff)
downloadFreeBSD-src-57634a38ed176c8088bfccfe76ad0f159d77686f.zip
FreeBSD-src-57634a38ed176c8088bfccfe76ad0f159d77686f.tar.gz
Attach to a CD device even when the SCSI status is 'busy'.
Reported by: Thomas Quinot <thomas@cuivre.fr.eu.org> MFC after: 3 weeks
Diffstat (limited to 'sys/cam')
-rw-r--r--sys/cam/scsi/scsi_cd.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/cam/scsi/scsi_cd.c b/sys/cam/scsi/scsi_cd.c
index ded1d1a..923b4bd 100644
--- a/sys/cam/scsi/scsi_cd.c
+++ b/sys/cam/scsi/scsi_cd.c
@@ -1715,6 +1715,16 @@ cddone(struct cam_periph *periph, union ccb *done_ccb)
"size failed: %s, %s",
sense_key_desc,
asc_desc);
+ } else if ((have_sense == 0)
+ && ((status & CAM_STATUS_MASK) ==
+ CAM_SCSI_STATUS_ERROR)
+ && (csio->scsi_status ==
+ SCSI_STATUS_BUSY)) {
+ snprintf(announce_buf,
+ sizeof(announce_buf),
+ "Attempt to query device "
+ "size failed: SCSI Status: %s",
+ scsi_status_string(csio));
} else if (SID_TYPE(&cgd.inq_data) == T_CDROM) {
/*
* We only print out an error for
OpenPOWER on IntegriCloud