summaryrefslogtreecommitdiffstats
path: root/sys/cam
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2015-09-24 12:22:47 +0000
committermav <mav@FreeBSD.org>2015-09-24 12:22:47 +0000
commit661d29ba49a8353518118f9d34ee5ab73581740f (patch)
treeb25d54eba42989adde8ee7fcd1952445513ffe69 /sys/cam
parent9e5012814b71bdda6abf1066a2863c0aeeecfa2c (diff)
downloadFreeBSD-src-661d29ba49a8353518118f9d34ee5ab73581740f.zip
FreeBSD-src-661d29ba49a8353518118f9d34ee5ab73581740f.tar.gz
Add new report types to REPORT LUNS command.
This is only for completeness, since we have nothing new to report there.
Diffstat (limited to 'sys/cam')
-rw-r--r--sys/cam/ctl/ctl.c8
-rw-r--r--sys/cam/scsi/scsi_all.h3
2 files changed, 7 insertions, 4 deletions
diff --git a/sys/cam/ctl/ctl.c b/sys/cam/ctl/ctl.c
index 3085f06..8833752 100644
--- a/sys/cam/ctl/ctl.c
+++ b/sys/cam/ctl/ctl.c
@@ -9265,12 +9265,10 @@ ctl_report_luns(struct ctl_scsiio *ctsio)
struct ctl_port *port;
int num_luns, retval;
uint32_t alloc_len, lun_datalen;
- int num_filled, well_known;
+ int num_filled;
uint32_t initidx, targ_lun_id, lun_id;
retval = CTL_RETVAL_COMPLETE;
- well_known = 0;
-
cdb = (struct scsi_report_luns *)ctsio->cdb;
port = ctl_io_port(&ctsio->io_hdr);
@@ -9287,9 +9285,11 @@ ctl_report_luns(struct ctl_scsiio *ctsio)
switch (cdb->select_report) {
case RPL_REPORT_DEFAULT:
case RPL_REPORT_ALL:
+ case RPL_REPORT_NONSUBSID:
break;
case RPL_REPORT_WELLKNOWN:
- well_known = 1;
+ case RPL_REPORT_ADMIN:
+ case RPL_REPORT_CONGLOM:
num_luns = 0;
break;
default:
diff --git a/sys/cam/scsi/scsi_all.h b/sys/cam/scsi/scsi_all.h
index daae040..f2b4b21 100644
--- a/sys/cam/scsi/scsi_all.h
+++ b/sys/cam/scsi/scsi_all.h
@@ -2864,6 +2864,9 @@ struct scsi_report_luns
#define RPL_REPORT_DEFAULT 0x00
#define RPL_REPORT_WELLKNOWN 0x01
#define RPL_REPORT_ALL 0x02
+#define RPL_REPORT_ADMIN 0x10
+#define RPL_REPORT_NONSUBSID 0x11
+#define RPL_REPORT_CONGLOM 0x12
uint8_t select_report;
uint8_t reserved2[3];
uint8_t length[4];
OpenPOWER on IntegriCloud