From b4b107c4c2fd2517bb084f031f335d97548df9c1 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mar 17 2014 23:17:13 +0000 Subject: update 3.3.17-prefix patch --- diff --git a/opensm-3.3.13-prefix.patch b/opensm-3.3.13-prefix.patch deleted file mode 100644 index cd1ea5c..0000000 --- a/opensm-3.3.13-prefix.patch +++ /dev/null @@ -1,58 +0,0 @@ -diff -up opensm-3.3.13/man/opensm.8.in.prefix opensm-3.3.13/man/opensm.8.in ---- opensm-3.3.13/man/opensm.8.in.prefix 2012-02-28 18:27:33.297714661 -0500 -+++ opensm-3.3.13/man/opensm.8.in 2012-02-28 18:31:00.957696942 -0500 -@@ -11,6 +11,7 @@ opensm \- InfiniBand subnet manager and - [\-g(uid) ] - [\-l(mc) ] - [\-p(riority) ] -+[\-\-subnet_prefix ] - [\-smkey ] - [\-\-sm_sl ] - [\-r(eassign_lids)] -@@ -130,6 +131,13 @@ This will effect the handover cases, whe - is chosen by priority and GUID. Range goes from 0 - (default and lowest priority) to 15 (highest). - .TP -+\fB\-\-subnet_prefix\fR -+This option specifies the subnet prefix to use in -+on the fabric. The default prefix is -+0xfe80000000000000. OpenMPI in particular requires -+separate fabrics plugged into different ports to -+have different prefixes or else it won't run. -+.TP - \fB\-smkey\fR - This option specifies the SM\'s SM_Key (64 bits). - This will effect SM authentication. -diff -up opensm-3.3.13/opensm/main.c.prefix opensm-3.3.13/opensm/main.c ---- opensm-3.3.13/opensm/main.c.prefix 2012-01-17 08:22:40.000000000 -0500 -+++ opensm-3.3.13/opensm/main.c 2012-02-28 18:31:34.224694111 -0500 -@@ -156,6 +156,9 @@ static void show_usage(void) - " This will effect the handover cases, where master\n" - " is chosen by priority and GUID. Range goes\n" - " from 0 (lowest priority) to 15 (highest).\n\n"); -+ printf("--subnet_prefix \n" -+ " Set the subnet prefix to something other than the\n" -+ " default value of 0xfe80000000000000\n\n"); - printf("--smkey, -k \n" - " This option specifies the SM's SM_Key (64 bits).\n" - " This will effect SM authentication.\n" -@@ -607,6 +610,7 @@ int main(int argc, char *argv[]) - {"once", 0, NULL, 'o'}, - {"reassign_lids", 0, NULL, 'r'}, - {"priority", 1, NULL, 'p'}, -+ {"subnet_prefix", 1, NULL, 13}, - {"smkey", 1, NULL, 'k'}, - {"routing_engine", 1, NULL, 'R'}, - {"ucast_cache", 0, NULL, 'A'}, -@@ -911,6 +915,11 @@ int main(int argc, char *argv[]) - printf(" Priority = %d\n", temp); - break; - -+ case 13: -+ opt.subnet_prefix = cl_hton64(strtoull(optarg, NULL, 16)); -+ printf(" Subnet_Prefix = <0x%" PRIx64 ">\n", cl_hton64(opt.subnet_prefix)); -+ break; -+ - case 'k': - sm_key = cl_hton64(strtoull(optarg, NULL, 16)); - printf(" SM Key <0x%" PRIx64 ">\n", cl_hton64(sm_key)); diff --git a/opensm-3.3.17-prefix.patch b/opensm-3.3.17-prefix.patch new file mode 100644 index 0000000..0921437 --- /dev/null +++ b/opensm-3.3.17-prefix.patch @@ -0,0 +1,56 @@ +--- opensm-3.3.17/man/opensm.8.in.orig 2014-03-17 22:57:54.510928914 +0000 ++++ opensm-3.3.17/man/opensm.8.in 2014-03-17 22:59:18.885215712 +0000 +@@ -11,6 +11,7 @@ + [\-g(uid) ] + [\-l(mc) ] + [\-p(riority) ] ++[\-\-subnet_prefix ] + [\-\-smkey ] + [\-\-sm_sl ] + [\-r(eassign_lids)] +@@ -135,6 +136,13 @@ + is chosen by priority and GUID. Range goes from 0 + (default and lowest priority) to 15 (highest). + .TP ++\fB\-\-subnet_prefix\fR ++This option specifies the subnet prefix to use in ++on the fabric. The default prefix is ++0xfe80000000000000. OpenMPI in particular requires ++separate fabrics plugged into different ports to ++have different prefixes or else it won't run. ++.TP + \fB\-\-smkey\fR + This option specifies the SM\'s SM_Key (64 bits). + This will effect SM authentication. +--- opensm-3.3.17/opensm/main.c.orig 2014-01-29 20:50:51.000000000 +0000 ++++ opensm-3.3.17/opensm/main.c 2014-03-17 22:57:54.513928955 +0000 +@@ -160,6 +160,9 @@ + " This will effect the handover cases, where master\n" + " is chosen by priority and GUID. Range goes\n" + " from 0 (lowest priority) to 15 (highest).\n\n"); ++ printf("--subnet_prefix \n" ++ " Set the subnet prefix to something other than the\n" ++ " default value of 0xfe80000000000000\n\n"); + printf("--smkey, -k \n" + " This option specifies the SM's SM_Key (64 bits).\n" + " This will effect SM authentication.\n" +@@ -654,6 +657,7 @@ + {"once", 0, NULL, 'o'}, + {"reassign_lids", 0, NULL, 'r'}, + {"priority", 1, NULL, 'p'}, ++ {"subnet_prefix", 1, NULL, 15}, + {"smkey", 1, NULL, 'k'}, + {"routing_engine", 1, NULL, 'R'}, + {"ucast_cache", 0, NULL, 'A'}, +@@ -996,6 +1000,11 @@ + printf(" Priority = %d\n", temp); + break; + ++ case 15: ++ opt.subnet_prefix = cl_hton64(strtoull(optarg, NULL, 16)); ++ printf(" Subnet_Prefix = <0x%" PRIx64 ">\n", cl_hton64(opt.subnet_prefix)); ++ break; ++ + case 'k': + sm_key = cl_hton64(strtoull(optarg, NULL, 16)); + printf(" SM Key <0x%" PRIx64 ">\n", cl_hton64(sm_key)); diff --git a/opensm.spec b/opensm.spec index b757c4c..1f2ed17 100644 --- a/opensm.spec +++ b/opensm.spec @@ -12,7 +12,7 @@ Source4: opensm.sysconfig Source5: opensm.service Source6: opensm.launch Source7: opensm.rwtab -Patch0: opensm-3.3.13-prefix.patch +Patch0: opensm-3.3.17-prefix.patch BuildRequires: libibmad-devel = 1.3.9, libtool, bison, flex, byacc, systemd Requires: %{name}-libs = %{version}-%{release}, logrotate, rdma