[PATCH opensm] Replace hard coded constants with defines for force_link_xxx options

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Hal Rosenstock <hal@xxxxxxxxxxxx>
---
 include/iba/ib_types.h | 13 +++++++++++++
 opensm/osm_link_mgr.c  |  6 +++---
 opensm/osm_subnet.c    | 34 +++++++++++++++++++---------------
 3 files changed, 35 insertions(+), 18 deletions(-)

diff --git a/include/iba/ib_types.h b/include/iba/ib_types.h
index 3fde273..fb1c3f9 100644
--- a/include/iba/ib_types.h
+++ b/include/iba/ib_types.h
@@ -5180,14 +5180,27 @@ ib_port_info_get_link_speed_active(IN const ib_port_info_t * const p_pi)
 #define IB_LINK_WIDTH_ACTIVE_8X			4
 #define IB_LINK_WIDTH_ACTIVE_12X 		8
 #define IB_LINK_WIDTH_ACTIVE_2X			16
+#define IB_LINK_WIDTH_1X_2X_4X_8X_OR_12X	(IB_LINK_WIDTH_ACTIVE_1X | \
+						 IB_LINK_WIDTH_ACTIVE_2X | \
+						 IB_LINK_WIDTH_ACTIVE_4X | \
+						 IB_LINK_WIDTH_ACTIVE_8X | \
+						 IB_LINK_WIDTH_ACTIVE_12X)
+#define IB_LINK_WIDTH_SET_LWS			255
 #define IB_LINK_SPEED_ACTIVE_EXTENDED		0
 #define IB_LINK_SPEED_ACTIVE_2_5		1
 #define IB_LINK_SPEED_ACTIVE_5			2
 #define IB_LINK_SPEED_ACTIVE_10			4
+#define IB_LINK_SPEED_2_5_5_OR_10		(IB_LINK_SPEED_ACTIVE_2_5 | \
+						 IB_LINK_SPEED_ACTIVE_5 | \
+						 IB_LINK_SPEED_ACTIVE_10)
+#define IB_LINK_SPEED_SET_LSS			15
 #define IB_LINK_SPEED_EXT_ACTIVE_NONE		0
 #define IB_LINK_SPEED_EXT_ACTIVE_14		1
 #define IB_LINK_SPEED_EXT_ACTIVE_25		2
 #define IB_LINK_SPEED_EXT_ACTIVE_50		4
+#define IB_LINK_SPEED_EXT_14_25_OR_50		(IB_LINK_SPEED_EXT_ACTIVE_14 | \
+						 IB_LINK_SPEED_EXT_ACTIVE_25 | \
+						 IB_LINK_SPEED_EXT_ACTIVE_50)
 #define IB_LINK_SPEED_EXT_DISABLE		30
 #define IB_LINK_SPEED_EXT_SET_LSES		31
 
diff --git a/opensm/osm_link_mgr.c b/opensm/osm_link_mgr.c
index dcdbab8..64ddaf7 100644
--- a/opensm/osm_link_mgr.c
+++ b/opensm/osm_link_mgr.c
@@ -338,10 +338,10 @@ static int link_mgr_set_physp_pi(osm_sm_t * sm, IN osm_physp_t * p_physp,
 		   then determine the neighbor MTU.
 		 */
 		if (sm->p_subn->opt.force_link_width &&
-		    (sm->p_subn->opt.force_link_width < 16 ||
+		    (sm->p_subn->opt.force_link_width < IB_LINK_WIDTH_ACTIVE_2X ||
 		     (p_pi->capability_mask2 &
 		      IB_PORT_CAP2_IS_LINK_WIDTH_2X_SUPPORTED)) &&
-		    (sm->p_subn->opt.force_link_width != 255 ||
+		    (sm->p_subn->opt.force_link_width != IB_LINK_WIDTH_SET_LWS ||
 		     p_pi->link_width_enabled != p_pi->link_width_supported)) {
 			p_pi->link_width_enabled = sm->p_subn->opt.force_link_width;
 			if (p_pi->link_width_enabled != p_old_pi->link_width_enabled)
@@ -349,7 +349,7 @@ static int link_mgr_set_physp_pi(osm_sm_t * sm, IN osm_physp_t * p_physp,
 		}
 
 		if (sm->p_subn->opt.force_link_speed &&
-		    (sm->p_subn->opt.force_link_speed != 15 ||
+		    (sm->p_subn->opt.force_link_speed != IB_LINK_SPEED_SET_LSS ||
 		     ib_port_info_get_link_speed_enabled(p_pi) !=
 		     ib_port_info_get_link_speed_sup(p_pi))) {
 			ib_port_info_set_link_speed_enabled(p_pi,
diff --git a/opensm/osm_subnet.c b/opensm/osm_subnet.c
index 685d19b..8d0d46f 100644
--- a/opensm/osm_subnet.c
+++ b/opensm/osm_subnet.c
@@ -1566,9 +1566,9 @@ void osm_subn_set_default_opt(IN osm_subn_opt_t * p_opt)
 	p_opt->lmc = OSM_DEFAULT_LMC;
 	p_opt->lmc_esp0 = FALSE;
 	p_opt->max_op_vls = OSM_DEFAULT_MAX_OP_VLS;
-	p_opt->force_link_speed = 15;
-	p_opt->force_link_speed_ext = 31;
-	p_opt->force_link_width = 255;
+	p_opt->force_link_speed = IB_LINK_SPEED_SET_LSS;
+	p_opt->force_link_speed_ext = IB_LINK_SPEED_EXT_SET_LSES;
+	p_opt->force_link_width = IB_LINK_WIDTH_SET_LWS;
 	p_opt->fdr10 = 1;
 	p_opt->reassign_lids = FALSE;
 	p_opt->ignore_other_sm = FALSE;
@@ -2050,27 +2050,31 @@ int osm_subn_verify_config(IN osm_subn_opt_t * p_opts)
 		p_opts->sm_priority = OSM_DEFAULT_SM_PRIORITY;
 	}
 
-	if ((15 < p_opts->force_link_speed) ||
-	    (p_opts->force_link_speed > 7 && p_opts->force_link_speed < 15)) {
+	if ((IB_LINK_SPEED_SET_LSS < p_opts->force_link_speed) ||
+	    (p_opts->force_link_speed > IB_LINK_SPEED_2_5_5_OR_10 &&
+	     p_opts->force_link_speed < IB_LINK_SPEED_SET_LSS)) {
 		log_report(" Invalid Cached Option Value:force_link_speed = %u:"
 			   "Using Default:%u\n", p_opts->force_link_speed,
-			   IB_PORT_LINK_SPEED_ENABLED_MASK);
-		p_opts->force_link_speed = IB_PORT_LINK_SPEED_ENABLED_MASK;
+			   IB_LINK_SPEED_SET_LSS);
+		p_opts->force_link_speed = IB_LINK_SPEED_SET_LSS;
 	}
 
-	if ((31 < p_opts->force_link_speed_ext) ||
-	    (p_opts->force_link_speed_ext > 7 && p_opts->force_link_speed_ext < 30)) {
+	if ((IB_LINK_SPEED_EXT_SET_LSES < p_opts->force_link_speed_ext) ||
+	    (p_opts->force_link_speed_ext > IB_LINK_SPEED_EXT_14_25_OR_50 &&
+	     p_opts->force_link_speed_ext < IB_LINK_SPEED_EXT_DISABLE)) {
 		log_report(" Invalid Cached Option Value:force_link_speed_ext = %u:"
 			   "Using Default:%u\n", p_opts->force_link_speed_ext,
-			   31);
-		p_opts->force_link_speed_ext = 31;
+			   IB_LINK_SPEED_EXT_SET_LSES);
+		p_opts->force_link_speed_ext = IB_LINK_SPEED_EXT_SET_LSES;
 	}
 
-	if ((255 < p_opts->force_link_width) ||
-	    (p_opts->force_link_width > 31 && p_opts->force_link_width < 255)) {
+	if ((IB_LINK_WIDTH_SET_LWS < p_opts->force_link_width) ||
+	    (p_opts->force_link_width > IB_LINK_WIDTH_1X_2X_4X_8X_OR_12X &&
+	     p_opts->force_link_width < IB_LINK_WIDTH_SET_LWS)) {
 		log_report(" Invalid Cached Option Value:force_link_width = %u:"
-			   "Using Default:%u\n", p_opts->force_link_width, 255);
-		p_opts->force_link_width = 255;
+			   "Using Default:%u\n", p_opts->force_link_width,
+			   IB_LINK_WIDTH_SET_LWS);
+		p_opts->force_link_width = IB_LINK_WIDTH_SET_LWS;
 	}
 
 	if (2 < p_opts->fdr10) {
-- 
2.8.4




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux