svn commit: r300369 - in head/sys/dev: cxgbe/cxgbei iscsi

Edward Tomasz Napierala trasz at FreeBSD.org
Sat May 21 11:10:50 UTC 2016


Author: trasz
Date: Sat May 21 11:10:48 2016
New Revision: 300369
URL: https://svnweb.freebsd.org/changeset/base/300369

Log:
  Provide a way for ICL modules to declare they support PIM_UNMAPPED.
  
  MFC after:	1 month
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/sys/dev/cxgbe/cxgbei/icl_cxgbei.c
  head/sys/dev/iscsi/icl.h
  head/sys/dev/iscsi/icl_soft.c
  head/sys/dev/iscsi/iscsi.c

Modified: head/sys/dev/cxgbe/cxgbei/icl_cxgbei.c
==============================================================================
--- head/sys/dev/cxgbe/cxgbei/icl_cxgbei.c	Sat May 21 10:59:36 2016	(r300368)
+++ head/sys/dev/cxgbe/cxgbei/icl_cxgbei.c	Sat May 21 11:10:48 2016	(r300369)
@@ -429,6 +429,7 @@ icl_cxgbei_new_conn(const char *name, st
 	ic->ic_max_data_segment_length = CXGBEI_MAX_DSL;
 	ic->ic_name = name;
 	ic->ic_offload = "cxgbei";
+	ic->ic_unmapped = false;
 
 	CTR2(KTR_CXGBE, "%s: icc %p", __func__, icc);
 

Modified: head/sys/dev/iscsi/icl.h
==============================================================================
--- head/sys/dev/iscsi/icl.h	Sat May 21 10:59:36 2016	(r300368)
+++ head/sys/dev/iscsi/icl.h	Sat May 21 11:10:48 2016	(r300369)
@@ -113,6 +113,7 @@ struct icl_conn {
 	size_t			ic_maxtags;
 	bool			ic_disconnecting;
 	bool			ic_iser;
+	bool			ic_unmapped;
 	const char		*ic_name;
 	const char		*ic_offload;
 

Modified: head/sys/dev/iscsi/icl_soft.c
==============================================================================
--- head/sys/dev/iscsi/icl_soft.c	Sat May 21 10:59:36 2016	(r300368)
+++ head/sys/dev/iscsi/icl_soft.c	Sat May 21 11:10:48 2016	(r300369)
@@ -1190,6 +1190,7 @@ icl_soft_new_conn(const char *name, stru
 	ic->ic_max_data_segment_length = ICL_MAX_DATA_SEGMENT_LENGTH;
 	ic->ic_name = name;
 	ic->ic_offload = "None";
+	ic->ic_unmapped = false;
 
 	return (ic);
 }

Modified: head/sys/dev/iscsi/iscsi.c
==============================================================================
--- head/sys/dev/iscsi/iscsi.c	Sat May 21 10:59:36 2016	(r300368)
+++ head/sys/dev/iscsi/iscsi.c	Sat May 21 11:10:48 2016	(r300369)
@@ -2266,6 +2266,14 @@ iscsi_action(struct cam_sim *sim, union 
 		cpi->hba_inquiry = PI_TAG_ABLE;
 		cpi->target_sprt = 0;
 		cpi->hba_misc = PIM_EXTLUNS;
+		/*
+		 * XXX: It shouldn't ever be NULL; this could be turned
+		 *      into a KASSERT eventually.
+		 */
+		if (is->is_conn == NULL)
+			ISCSI_WARN("NULL conn");
+		else if (is->is_conn->ic_unmapped)
+			cpi->hba_misc |= PIM_UNMAPPED;
 		cpi->hba_eng_cnt = 0;
 		cpi->max_target = 0;
 		/*


More information about the svn-src-all mailing list