From c97992e600fd3119307d882d0645f07a70e56775 Mon Sep 17 00:00:00 2001 From: Doug Ledford Date: Sun, 4 Feb 2018 14:04:29 -0500 Subject: [PATCH] Update to rdma-core-16.2 Major spec changes to accommodate the update from 14 to 16.2. Many of the rdma-core provided services are not done via udev on demand loading. Configuration file layout has changed. Signed-off-by: Doug Ledford --- .gitignore | 1 + rdma-core.spec | 98 +++++++++++++++++++++++++------------------------- sources | 2 +- 3 files changed, 50 insertions(+), 51 deletions(-) diff --git a/.gitignore b/.gitignore index 25beeff..81b65ec 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /rdma-core-12.tgz /rdma-core-12.tar.gz /rdma-core-14.tar.gz +/rdma-core-16.2.tar.gz diff --git a/rdma-core.spec b/rdma-core.spec index 7641d8b..c05b477 100644 --- a/rdma-core.spec +++ b/rdma-core.spec @@ -1,6 +1,6 @@ Name: rdma-core -Version: 14 -Release: 4%{?dist} +Version: 16.2 +Release: 1%{?dist} Summary: RDMA core userspace libraries and daemons # Almost everything is licensed under the OFA dual GPLv2, 2 Clause BSD license @@ -22,24 +22,19 @@ BuildRequires: pkgconfig(libnl-route-3.0) BuildRequires: valgrind-devel %endif BuildRequires: systemd +BuildRequires: systemd-devel BuildRequires: python -BuildRequires: sed -Requires: dracut, kmod, initscripts, systemd -%if 0%{?fedora} >= 24 -Requires: systemd-udev -%endif +Requires: dracut, kmod, systemd, initscripts # Red Hat/Fedora previously shipped redhat/ as a stand-alone # package called 'rdma', which we're supplanting here. Provides: rdma = %{version}-%{release} Obsoletes: rdma < %{version}-%{release} Provides: rdma-ndd = %{version}-%{release} Obsoletes: rdma-ndd < %{version}-%{release} +Obsoletes: libehca < 1.2.2-7 # the ndd utility moved from infiniband-diags to rdma-core Conflicts: infiniband-diags <= 1.6.7 -Requires: pciutils -# 32-bit arm is missing required arch-specific memory barriers, -ExcludeArch: %{arm} # Since we recommend developers use Ninja, so should packagers, for consistency. %define CMAKE_FLAGS %{nil} @@ -57,9 +52,9 @@ BuildRequires: make %endif %description -RDMA core userspace infrastructure and documentation, including initscripts, -kernel driver-specific modprobe override configs, IPoIB network scripts, -dracut rules, and the rdma-ndd utility. +RDMA core userspace infrastructure and documentation, including initialization +scripts, kernel driver-specific modprobe override configs, IPoIB network +scripts, dracut rules, and the rdma-ndd utility. %package devel Summary: RDMA core development libraries and headers @@ -113,6 +108,8 @@ RDMA core development libraries and headers. %package -n libibverbs Summary: A library and drivers for direct userspace use of RDMA (InfiniBand/iWARP/RoCE) hardware +Requires(post): /sbin/ldconfig +Requires(postun): /sbin/ldconfig Requires: %{name}%{?_isa} = %{version}-%{release} Provides: libcxgb3 = %{version}-%{release} Obsoletes: libcxgb3 < %{version}-%{release} @@ -177,8 +174,6 @@ displays information about RDMA devices. Summary: InfiniBand Communication Manager Assistant %{?systemd_requires} Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: libibumad%{?_isa} = %{version}-%{release} -Requires: libibverbs%{?_isa} = %{version}-%{release} %description -n ibacm The ibacm daemon helps reduce the load of managing path record lookups on @@ -201,8 +196,8 @@ tcp ports through the standard socket interface. %package -n libibcm Summary: Userspace InfiniBand Connection Manager +ExcludeArch: s390 s390x Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: libibverbs%{?_isa} = %{version}-%{release} %description -n libibcm libibcm provides a userspace library that handles the majority of the low @@ -220,15 +215,13 @@ are used by the IB diagnostic and management tools, including OpenSM. %package -n librdmacm Summary: Userspace RDMA Connection Manager Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: libibverbs%{?_isa} = %{version}-%{release} %description -n librdmacm -librdmacm provides a userspace RDMA Communication Managment API. +librdmacm provides a userspace RDMA Communication Management API. %package -n librdmacm-utils Summary: Examples for the librdmacm library Requires: librdmacm%{?_isa} = %{version}-%{release} -Requires: libibverbs%{?_isa} = %{version}-%{release} %description -n librdmacm-utils Example test programs for the librdmacm library. @@ -240,8 +233,6 @@ Provides: srptools = %{version}-%{release} Obsoletes: openib-srptools <= 0.0.6 %{?systemd_requires} Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: libibumad%{?_isa} = %{version}-%{release} -Requires: libibverbs%{?_isa} = %{version}-%{release} %description -n srp_daemon In conjunction with the kernel ib_srp driver, srp_daemon allows you to @@ -298,28 +289,20 @@ install -D -m0644 redhat/rdma.mlx4.conf %{buildroot}/%{_sysconfdir}/rdma/mlx4.co install -D -m0755 redhat/rdma.ifup-ib %{buildroot}/%{_sysconfdir}/sysconfig/network-scripts/ifup-ib install -D -m0755 redhat/rdma.ifdown-ib %{buildroot}/%{_sysconfdir}/sysconfig/network-scripts/ifdown-ib install -D -m0644 redhat/rdma.service %{buildroot}%{_unitdir}/rdma.service -install -D -m0644 redhat/rdma.udev-ipoib-naming.rules %{buildroot}%{_sysconfdir}/udev/rules.d/70-persistent-ipoib.rules -install -D -m0644 redhat/rdma.mlx4.user.modprobe %{buildroot}%{_sysconfdir}/modprobe.d/mlx4.conf install -D -m0755 redhat/rdma.modules-setup.sh %{buildroot}%{dracutlibdir}/modules.d/05rdma/module-setup.sh install -D -m0644 redhat/rdma.udev-rules %{buildroot}%{_udevrulesdir}/98-rdma.rules install -D -m0644 redhat/rdma.mlx4.sys.modprobe %{buildroot}%{sysmodprobedir}/libmlx4.conf -install -D -m0644 redhat/rdma.cxgb3.sys.modprobe %{buildroot}%{sysmodprobedir}/cxgb3.conf -install -D -m0644 redhat/rdma.cxgb4.sys.modprobe %{buildroot}%{sysmodprobedir}/cxgb4.conf install -D -m0755 redhat/rdma.kernel-init %{buildroot}%{_libexecdir}/rdma-init-kernel install -D -m0755 redhat/rdma.sriov-init %{buildroot}%{_libexecdir}/rdma-set-sriov-vf -install -D -m0644 redhat/rdma.fixup-mtrr.awk %{buildroot}%{_libexecdir}/rdma-fixup-mtrr.awk install -D -m0755 redhat/rdma.mlx4-setup.sh %{buildroot}%{_libexecdir}/mlx4-setup.sh # ibacm bin/ib_acme -D . -O -# multi-lib conflict resolution hacks (bug 1429362) -sed -i -e 's|%{_libdir}|/usr/lib|' %{buildroot}%{_mandir}/man7/ibacm_prov.7 -sed -i -e 's|%{_libdir}|/usr/lib|' ibacm_opts.cfg install -D -m0644 ibacm_opts.cfg %{buildroot}%{_sysconfdir}/rdma/ -install -D -m0644 redhat/ibacm.service %{buildroot}%{_unitdir}/ # Delete the package's init.d scripts rm -rf %{buildroot}/%{_initrddir}/ +rm -f %{buildroot}/%{_sbindir}/srp_daemon.sh %post -n libibverbs -p /sbin/ldconfig %postun -n libibverbs -p /sbin/ldconfig @@ -358,26 +341,43 @@ rm -rf %{buildroot}/%{_initrddir}/ %dir %{_sysconfdir}/rdma %dir %{_docdir}/%{name}-%{version} %doc %{_docdir}/%{name}-%{version}/README.md -%config(noreplace) %{_sysconfdir}/rdma/* +%doc %{_docdir}/%{name}-%{version}/rxe.md +%doc %{_docdir}/%{name}-%{version}/udev.md +%doc %{_docdir}/%{name}-%{version}/tag_matching.md +%config(noreplace) %{_sysconfdir}/rdma/mlx4.conf +%config(noreplace) %{_sysconfdir}/rdma/modules/infiniband.conf +%config(noreplace) %{_sysconfdir}/rdma/modules/iwarp.conf +%config(noreplace) %{_sysconfdir}/rdma/modules/opa.conf +%config(noreplace) %{_sysconfdir}/rdma/modules/rdma.conf +%config(noreplace) %{_sysconfdir}/rdma/modules/roce.conf +%config(noreplace) %{_sysconfdir}/rdma/rdma.conf +%config(noreplace) %{_sysconfdir}/rdma/sriov-vfs %config(noreplace) %{_sysconfdir}/udev/rules.d/* %config(noreplace) %{_sysconfdir}/modprobe.d/mlx4.conf %config(noreplace) %{_sysconfdir}/modprobe.d/truescale.conf %{_sysconfdir}/sysconfig/network-scripts/* +%{_unitdir}/rdma-hw.target +%{_unitdir}/rdma-load-modules@.service %{_unitdir}/rdma.service %dir %{dracutlibdir}/modules.d/05rdma %{dracutlibdir}/modules.d/05rdma/module-setup.sh -%{_udevrulesdir}/* +%{_udevrulesdir}/60-rdma-ndd.rules +%{_udevrulesdir}/75-rdma-description.rules +%{_udevrulesdir}/90-rdma-hw-modules.rules +%{_udevrulesdir}/90-rdma-ulp-modules.rules +%{_udevrulesdir}/90-rdma-umad.rules +%{_udevrulesdir}/98-rdma.rules %{sysmodprobedir}/libmlx4.conf -%{sysmodprobedir}/cxgb3.conf -%{sysmodprobedir}/cxgb4.conf %{_libexecdir}/rdma-init-kernel %{_libexecdir}/rdma-set-sriov-vf -%{_libexecdir}/rdma-fixup-mtrr.awk %{_libexecdir}/mlx4-setup.sh %{_libexecdir}/truescale-serdes.cmds +%{_bindir}/rxe_cfg %{_sbindir}/rdma-ndd %{_unitdir}/rdma-ndd.service +%{_mandir}/man7/rxe* %{_mandir}/man8/rdma-ndd.* +%{_mandir}/man8/rxe* %license COPYING.* %files devel @@ -391,11 +391,13 @@ rm -rf %{buildroot}/%{_initrddir}/ %{_mandir}/man3/rdma* %{_mandir}/man3/umad* %{_mandir}/man3/*_to_ibv_rate.* +%{_mandir}/man7/rdma_cm.* %ifnarch s390x s390 %{_mandir}/man3/mlx5dv* %{_mandir}/man7/mlx5dv* %endif -%{_mandir}/man7/rdma_cm.* +%{_mandir}/man3/mlx4dv* +%{_mandir}/man7/mlx4dv* %files -n libibverbs %dir %{_sysconfdir}/libibverbs.d @@ -403,17 +405,11 @@ rm -rf %{buildroot}/%{_initrddir}/ %{_libdir}/libibverbs*.so.* %{_libdir}/libibverbs/*.so %ifnarch s390x s390 -%{_libdir}/libmlx5.so* +%{_libdir}/libmlx5.so.* %endif +%{_libdir}/libmlx4.so.* %config(noreplace) %{_sysconfdir}/libibverbs.d/*.driver %doc %{_docdir}/%{name}-%{version}/libibverbs.md -%doc %{_docdir}/%{name}-%{version}/rxe.md -%{_bindir}/rxe_cfg -%{_mandir}/man7/rxe* -%ifnarch s390x s390 -%{_mandir}/man7/mlx5dv* -%endif -%{_mandir}/man8/rxe* %files -n libibverbs-utils %{_bindir}/ibv_* @@ -428,15 +424,18 @@ rm -rf %{buildroot}/%{_initrddir}/ %{_mandir}/man7/ibacm.* %{_mandir}/man7/ibacm_prov.* %{_unitdir}/ibacm.service +%{_unitdir}/ibacm.socket %dir %{_libdir}/ibacm %{_libdir}/ibacm/* %doc %{_docdir}/%{name}-%{version}/ibacm.md %files -n iwpmd -%{_bindir}/iwpmd +%{_sbindir}/iwpmd %{_unitdir}/iwpmd.service +%config(noreplace) %{_sysconfdir}/rdma/modules/iwpmd.conf %config(noreplace) %{_sysconfdir}/iwpmd.conf -%{_mandir}/man1/iwpmd.* +%{_udevrulesdir}/90-iwpmd.rules +%{_mandir}/man8/iwpmd.* %{_mandir}/man5/iwpmd.* %files -n libibcm @@ -449,7 +448,7 @@ rm -rf %{buildroot}/%{_initrddir}/ %files -n librdmacm %{_libdir}/librdmacm*.so.* %dir %{_libdir}/rsocket -%{_libdir}/rsocket/librspreload.so* +%{_libdir}/rsocket/*.so* %doc %{_docdir}/%{name}-%{version}/librdmacm.md %{_mandir}/man7/rsocket.* @@ -483,15 +482,14 @@ rm -rf %{buildroot}/%{_initrddir}/ %files -n srp_daemon %config(noreplace) %{_sysconfdir}/srp_daemon.conf -%dir %{_libexecdir}/srp_daemon +%config(noreplace) %{_sysconfdir}/rdma/modules/srp_daemon.conf %{_libexecdir}/srp_daemon/start_on_all_ports %{_unitdir}/srp_daemon.service %{_unitdir}/srp_daemon_port@.service %{_sbindir}/ibsrpdm %{_sbindir}/srp_daemon -%{_sbindir}/srp_daemon.sh %{_sbindir}/run_srp_daemon -%{_udevrulesdir}/srp_daemon.rules +%{_udevrulesdir}/60-srp_daemon.rules %{_mandir}/man1/ibsrpdm.1* %{_mandir}/man1/srp_daemon.1* %{_mandir}/man5/srp_daemon.service.5* diff --git a/sources b/sources index b177000..da513eb 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (rdma-core-14.tar.gz) = 8fd988f038573ca3669543659f7f49441e625fe4e0ea4630160b6b54bfceb2124274f93616b4fec1b2bfc7bcf538dd68f0405031f4d7e5d6b922b80d4737b518 +SHA512 (rdma-core-16.2.tar.gz) = 0226bf62f34e5fdefa6863e0c5c1485a35235d147390b5f3e8090a88e968d8ce6aad4b5c799943f55824a93c6a9f8a9982aab228c60dbc0c547e0e3c1570ad97