summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Savchenko <bircoph@gentoo.org>2015-02-11 04:45:41 +0000
committerAndrew Savchenko <bircoph@gentoo.org>2015-02-11 04:45:41 +0000
commitf707443fccb967e72249c85d5e575f57f39edf9c (patch)
tree6d73d151c170d1ca5b4a7249aa79dc58bbdb36ac /sys-infiniband
parentFix bugs 449058, 531878. (diff)
downloadgentoo-2-f707443fccb967e72249c85d5e575f57f39edf9c.tar.gz
gentoo-2-f707443fccb967e72249c85d5e575f57f39edf9c.tar.bz2
gentoo-2-f707443fccb967e72249c85d5e575f57f39edf9c.zip
Fix bugs 387623, 531980, 533676.
Signed-off-by: Andrew Savchenko <bircoph@gentoo.org> (Portage version: 2.2.15/cvs/Linux i686, signed Manifest commit with key 565953B95372756C)
Diffstat (limited to 'sys-infiniband')
-rw-r--r--sys-infiniband/opensm/ChangeLog15
-rw-r--r--sys-infiniband/opensm/files/opensm-3.3.17-norpm.patch32
-rw-r--r--sys-infiniband/opensm/files/opensm-3.3.17-sldd.patch20
-rw-r--r--sys-infiniband/opensm/files/opensm.conf.d3
-rw-r--r--sys-infiniband/opensm/files/opensm.init.d6
-rw-r--r--sys-infiniband/opensm/files/sldd.conf.d21
-rw-r--r--sys-infiniband/opensm/files/sldd.init.d26
-rw-r--r--sys-infiniband/opensm/metadata.xml3
-rw-r--r--sys-infiniband/opensm/opensm-3.3.17-r1.ebuild (renamed from sys-infiniband/opensm/opensm-3.3.17.ebuild)27
9 files changed, 142 insertions, 11 deletions
diff --git a/sys-infiniband/opensm/ChangeLog b/sys-infiniband/opensm/ChangeLog
index 902d66f3890b..411c961bd2fe 100644
--- a/sys-infiniband/opensm/ChangeLog
+++ b/sys-infiniband/opensm/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for sys-infiniband/opensm
-# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-infiniband/opensm/ChangeLog,v 1.6 2014/04/16 08:22:28 alexxy Exp $
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-infiniband/opensm/ChangeLog,v 1.7 2015/02/11 04:45:41 bircoph Exp $
+
+*opensm-3.3.17-r1 (11 Feb 2015)
+
+ 11 Feb 2015; Andrew Savchenko <bircoph@gentoo.org> -opensm-3.3.17.ebuild,
+ +opensm-3.3.17-r1.ebuild, +files/opensm-3.3.17-norpm.patch,
+ +files/opensm-3.3.17-sldd.patch, +files/opensm.conf.d, files/opensm.init.d,
+ +files/sldd.conf.d, +files/sldd.init.d, metadata.xml:
+ Use OSM_OPTIONS in both conf.d and init.d, wrt bug 387623.
+ Disable rpm calls, this fixes sandbox violation if rpm is
+ installed, wrt bug 531980.
+ Add option to install sldd daemon, wrt bug 533676.
*opensm-3.3.17 (16 Apr 2014)
diff --git a/sys-infiniband/opensm/files/opensm-3.3.17-norpm.patch b/sys-infiniband/opensm/files/opensm-3.3.17-norpm.patch
new file mode 100644
index 000000000000..1300d923eb7d
--- /dev/null
+++ b/sys-infiniband/opensm/files/opensm-3.3.17-norpm.patch
@@ -0,0 +1,32 @@
+--- opensm-3.3.17/configure.in.orig 2014-01-30 23:13:35.000000000 +0400
++++ opensm-3.3.17/configure.in 2014-12-27 02:48:11.264876067 +0300
+@@ -17,11 +17,7 @@
+ [name of the RDMA service: "rdma" when using /etc/init.d/rdma to start RDMA services; "openibd" when using /etc/init.d/openibd to start RDMA services [default=${default_rdma_service}]]))
+ AC_SUBST(RDMA_SERVICE, ${with_rdma_service:-${default_rdma_service}})
+
+-if { rpm -q sles-release || rpm -q openSUSE-release; } >/dev/null 2>&1; then
+- default_stop="0 1 4 6"
+-else
+- default_stop="0 1 6"
+-fi
++default_stop="0 1 6"
+
+ default_start="null"
+
+@@ -282,4 +278,4 @@
+ AC_CONFIG_FILES([man/opensm.8 man/torus-2QoS.8 man/torus-2QoS.conf.5 scripts/opensm.init scripts/redhat-opensm.init scripts/sldd.sh])
+
+ dnl Create the following Makefiles
+-AC_OUTPUT([include/opensm/osm_version.h Makefile include/Makefile complib/Makefile libvendor/Makefile opensm/Makefile osmeventplugin/Makefile osmtest/Makefile opensm.spec])
++AC_OUTPUT([include/opensm/osm_version.h Makefile include/Makefile complib/Makefile libvendor/Makefile opensm/Makefile osmeventplugin/Makefile osmtest/Makefile])
+--- opensm-3.3.17/Makefile.am.orig 2013-02-07 11:46:28.000000000 +0400
++++ opensm-3.3.17/Makefile.am 2014-12-27 02:48:45.133654187 +0300
+@@ -19,7 +19,7 @@
+ doc/partition-config.txt doc/opensm-sriov.txt \
+ doc/opensm_release_notes-3.3.txt
+
+-EXTRA_DIST = autogen.sh opensm.spec $(various_scripts) $(man_MANS) $(docs)
++EXTRA_DIST = autogen.sh $(various_scripts) $(man_MANS) $(docs)
+
+ dist-hook: $(EXTRA_DIST)
+ if [ -x $(top_srcdir)/gen_chlog.sh ] ; then \
diff --git a/sys-infiniband/opensm/files/opensm-3.3.17-sldd.patch b/sys-infiniband/opensm/files/opensm-3.3.17-sldd.patch
new file mode 100644
index 000000000000..d7eb3ec24b9b
--- /dev/null
+++ b/sys-infiniband/opensm/files/opensm-3.3.17-sldd.patch
@@ -0,0 +1,20 @@
+--- opensm-3.3.17/scripts/sldd.sh.in.orig 2013-02-07 11:46:29.000000000 +0400
++++ opensm-3.3.17/scripts/sldd.sh.in 2014-12-27 04:47:24.488636743 +0300
+@@ -42,7 +42,7 @@
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+
+-CONFIG=@sysconfdir@/sysconfig/opensm
++CONFIG=@sysconfdir@/conf.d/sldd
+ if [ -f $CONFIG ]; then
+ . $CONFIG
+ fi
+@@ -57,7 +57,7 @@
+
+ RCP=${RCP:-/usr/bin/scp}
+ RSH=${RSH:-/usr/bin/ssh}
+-IFCONFIG=${IFCONFIG:-'/sbin/ifconfig -a'}
++IFCONFIG=${IFCONFIG:-'/bin/ifconfig -a'}
+
+ declare -i SLDD_DEBUG
+ RESCAN_TIME=${RESCAN_TIME:-60}
diff --git a/sys-infiniband/opensm/files/opensm.conf.d b/sys-infiniband/opensm/files/opensm.conf.d
new file mode 100644
index 000000000000..4f0cd49a4bc5
--- /dev/null
+++ b/sys-infiniband/opensm/files/opensm.conf.d
@@ -0,0 +1,3 @@
+# Provide OpenSM options here.
+# See man opensm for details
+OSM_OPTIONS=""
diff --git a/sys-infiniband/opensm/files/opensm.init.d b/sys-infiniband/opensm/files/opensm.init.d
index a01cdd084d15..6b4b78b450aa 100644
--- a/sys-infiniband/opensm/files/opensm.init.d
+++ b/sys-infiniband/opensm/files/opensm.init.d
@@ -1,7 +1,7 @@
#!/sbin/runscript
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-infiniband/opensm/files/opensm.init.d,v 1.2 2012/04/18 16:45:30 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-infiniband/opensm/files/opensm.init.d,v 1.3 2015/02/11 04:45:41 bircoph Exp $
depend() {
need openib
@@ -12,7 +12,7 @@ prog=/usr/sbin/opensm
start() {
ebegin "Starting OpenSM Infiniband Subnet Manager"
- start-stop-daemon --start --background --exec $prog -- $OPTIONS
+ start-stop-daemon --start --background --exec $prog -- $OSM_OPTIONS
eend $?
}
diff --git a/sys-infiniband/opensm/files/sldd.conf.d b/sys-infiniband/opensm/files/sldd.conf.d
new file mode 100644
index 000000000000..ee0e88750310
--- /dev/null
+++ b/sys-infiniband/opensm/files/sldd.conf.d
@@ -0,0 +1,21 @@
+# Tho following variables will used for sldd.sh
+#
+# You must setup this for sldd to work
+OSM_HOSTS=""
+
+### Optional variables (defaults are commented out)
+
+# Debug level
+#SLDD_DEBUG="0"
+
+# OpenSM cache files
+#CACHE_FILE="/var/cache/opensm/guid2lid:/var/cache/opensm/guid2mkey:/var/cache/opensm/neighbors"
+
+# System calls
+#PING="ping -w 1 -c 1"
+#RCP="/usr/bin/scp"
+#SSH="/usr/bin/ssh"
+#IFCONFIG="/bin/ifconfig -a"
+
+# Delay between hosts scan
+#RESCAN_TIME="60"
diff --git a/sys-infiniband/opensm/files/sldd.init.d b/sys-infiniband/opensm/files/sldd.init.d
new file mode 100644
index 000000000000..fa9fbff0f617
--- /dev/null
+++ b/sys-infiniband/opensm/files/sldd.init.d
@@ -0,0 +1,26 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-infiniband/opensm/files/sldd.init.d,v 1.1 2015/02/11 04:45:41 bircoph Exp $
+
+depend() {
+ need opensm
+ after net # ip net seems to be needed to perform management.
+}
+
+prog=/usr/sbin/sldd.sh
+pidfile=/var/run/sldd.pid
+
+start() {
+ ebegin "Starting Semi-static LID OpenSM Distribution Manager"
+ start-stop-daemon --start --background --pidfile "${pidfile}" \
+ --make-pidfile --wait 500 --exec $prog
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping OpenSM Infiniband Subnet Manager"
+ start-stop-daemon --stop --pidfile "${pidfile}"
+ eend $?
+}
+
diff --git a/sys-infiniband/opensm/metadata.xml b/sys-infiniband/opensm/metadata.xml
index 82f7df3d4706..eb4ecb9d802f 100644
--- a/sys-infiniband/opensm/metadata.xml
+++ b/sys-infiniband/opensm/metadata.xml
@@ -7,4 +7,7 @@ OpenSM provides an implementation for an InfiniBand Subnet Manager and
Administrator. Such a software entity is required to run for in order to
initialize the InfiniBand hardware (at least one per each InfiniBand subnet).
</longdescription>
+<use>
+ <flag name="tools">Install ssld extra tool</flag>
+</use>
</pkgmetadata>
diff --git a/sys-infiniband/opensm/opensm-3.3.17.ebuild b/sys-infiniband/opensm/opensm-3.3.17-r1.ebuild
index 489ec6f2588d..7f93744afdcb 100644
--- a/sys-infiniband/opensm/opensm-3.3.17.ebuild
+++ b/sys-infiniband/opensm/opensm-3.3.17-r1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-infiniband/opensm/opensm-3.3.17.ebuild,v 1.1 2014/04/16 08:22:28 alexxy Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-infiniband/opensm/opensm-3.3.17-r1.ebuild,v 1.1 2015/02/11 04:45:41 bircoph Exp $
EAPI="5"
@@ -9,19 +9,28 @@ OFED_RC="1"
OFED_RC_VER="1"
OFED_SUFFIX="1"
-inherit openib
+inherit autotools eutils openib
DESCRIPTION="OpenSM - InfiniBand Subnet Manager and Administration for OpenIB"
KEYWORDS="~amd64 ~x86 ~amd64-linux"
-IUSE=""
+IUSE="tools"
DEPEND="
sys-infiniband/libibmad:${SLOT}
sys-infiniband/libibumad:${SLOT}"
RDEPEND="$DEPEND
- net-misc/iputils"
+ tools? (
+ net-misc/iputils
+ net-misc/openssh
+ )"
block_other_ofed_versions
+src_prepare() {
+ epatch "${FILESDIR}/${P}-norpm.patch"
+ epatch "${FILESDIR}/${P}-sldd.patch"
+ eautoreconf
+}
+
src_configure() {
econf \
--enable-perf-mgr \
@@ -31,12 +40,18 @@ src_configure() {
src_install() {
default
- newconfd "${S}/scripts/opensm.sysconfig" opensm
+ newconfd "${FILESDIR}/opensm.conf.d" opensm
newinitd "${FILESDIR}/opensm.init.d" opensm
insinto /etc/logrotate.d
newins "${S}/scripts/opensm.logrotate" opensm
# we dont nee this int script
rm "${ED}/etc/init.d/opensmd" || die "Dropping of upstream initscript failed"
+
+ if use tools; then
+ dosbin scripts/sldd.sh
+ newconfd "${FILESDIR}/sldd.conf.d" sldd
+ newinitd "${FILESDIR}/sldd.init.d" sldd
+ fi
}
pkg_postinst() {