aboutsummaryrefslogtreecommitdiff
path: root/sys/cam
diff options
context:
space:
mode:
authorAlexander Motin <mav@FreeBSD.org>2021-10-05 19:01:16 +0000
committerAlexander Motin <mav@FreeBSD.org>2021-10-05 19:01:16 +0000
commit730ea72c706ef8e025616772cfd86fd89ed3d42e (patch)
tree471f44af379d20b0f2868fb862aad2faa798efcc /sys/cam
parent8f9be1eed11c27c66386c3d72cd6c6aef597fa0d (diff)
downloadsrc-730ea72c706ef8e025616772cfd86fd89ed3d42e.tar.gz
src-730ea72c706ef8e025616772cfd86fd89ed3d42e.zip
Diffstat (limited to 'sys/cam')
-rw-r--r--sys/cam/scsi/scsi_enc_ses.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/cam/scsi/scsi_enc_ses.c b/sys/cam/scsi/scsi_enc_ses.c
index f4f1c4a23516..39d99fd23eb9 100644
--- a/sys/cam/scsi/scsi_enc_ses.c
+++ b/sys/cam/scsi/scsi_enc_ses.c
@@ -374,6 +374,10 @@ typedef struct ses_softc {
ses_control_reqlist_t ses_pending_requests;
} ses_softc_t;
+static int ses_search_globally = 0;
+SYSCTL_INT(_kern_cam_enc, OID_AUTO, search_globally, CTLFLAG_RWTUN,
+ &ses_search_globally, 0, "Search for disks on other buses");
+
/**
* \brief Reset a SES iterator to just before the first element
* in the configuration.
@@ -890,6 +894,10 @@ ses_path_iter_devid_callback(enc_softc_t *enc, enc_element_t *elem,
+ devid->length;
memcpy(device_pattern->data.devid_pat.id, devid,
device_pattern->data.devid_pat.id_len);
+ if (!ses_search_globally) {
+ device_pattern->flags |= DEV_MATCH_PATH;
+ device_pattern->path_id = xpt_path_path_id(enc->periph->path);
+ }
memset(&cdm, 0, sizeof(cdm));
if (xpt_create_path(&cdm.ccb_h.path, /*periph*/NULL,