diff options
Diffstat (limited to 'usr/src')
| -rw-r--r-- | usr/src/uts/common/io/scsi/targets/sd.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/usr/src/uts/common/io/scsi/targets/sd.c b/usr/src/uts/common/io/scsi/targets/sd.c index 5ef77293ee..6de12809b5 100644 --- a/usr/src/uts/common/io/scsi/targets/sd.c +++ b/usr/src/uts/common/io/scsi/targets/sd.c @@ -22315,6 +22315,12 @@ sd_get_media_info(dev_t dev, caddr_t arg, int flag) if (rtn) { /* + * We ignore all failures for CD and need to + * put the assessment before processing code + * to avoid missing assessment for FMA. + */ + sd_ssc_assessment(ssc, SD_FMT_IGNORE); + /* * Failed for other than an illegal request * or command not supported */ @@ -22323,11 +22329,9 @@ sd_get_media_info(dev_t dev, caddr_t arg, int flag) if ((rqbuf[2] != KEY_ILLEGAL_REQUEST) || (rqbuf[12] != 0x20)) { rval = EIO; - goto done; + goto no_assessment; } } - else - sd_ssc_assessment(ssc, SD_FMT_IGNORE); } else { /* * The GET CONFIGURATION command succeeded |
