svn commit: r287748 - head/sys/cam/ctl

Alexander Motin mav at FreeBSD.org
Sun Sep 13 13:00:21 UTC 2015


Author: mav
Date: Sun Sep 13 13:00:20 2015
New Revision: 287748
URL: https://svnweb.freebsd.org/changeset/base/287748

Log:
  Make TARGET RESET respect LUN mapping.

Modified:
  head/sys/cam/ctl/ctl.c

Modified: head/sys/cam/ctl/ctl.c
==============================================================================
--- head/sys/cam/ctl/ctl.c	Sun Sep 13 12:08:25 2015	(r287747)
+++ head/sys/cam/ctl/ctl.c	Sun Sep 13 13:00:20 2015	(r287748)
@@ -11336,6 +11336,7 @@ static int
 ctl_target_reset(struct ctl_softc *softc, union ctl_io *io,
 		 ctl_ua_type ua_type)
 {
+	struct ctl_port *port;
 	struct ctl_lun *lun;
 	int retval;
 
@@ -11356,8 +11357,13 @@ ctl_target_reset(struct ctl_softc *softc
 	retval = 0;
 
 	mtx_lock(&softc->ctl_lock);
-	STAILQ_FOREACH(lun, &softc->lun_list, links)
+	port = softc->ctl_ports[io->io_hdr.nexus.targ_port];
+	STAILQ_FOREACH(lun, &softc->lun_list, links) {
+		if (port != NULL &&
+		    ctl_lun_map_to_port(port, lun->lun) >= CTL_MAX_LUNS)
+			continue;
 		retval += ctl_lun_reset(lun, io, ua_type);
+	}
 	mtx_unlock(&softc->ctl_lock);
 
 	return (retval);


More information about the svn-src-head mailing list