Blame SPECS/rdma-core.spec

dd32cf
Name: rdma-core
bbe12a
Version: 26.0
bbe12a
Release: 8%{?dist}
dd32cf
Summary: RDMA core userspace libraries and daemons
dd32cf
5cb112
%ifnarch %{arm}
5cb112
%define dma_coherent 1
5cb112
%endif
5cb112
dd32cf
# Almost everything is licensed under the OFA dual GPLv2, 2 Clause BSD license
dd32cf
#  providers/ipathverbs/ Dual licensed using a BSD license with an extra patent clause
dd32cf
#  providers/rxe/ Incorporates code from ipathverbs and contains the patent clause
dd32cf
#  providers/hfi1verbs Uses the 3 Clause BSD license
dd32cf
License: GPLv2 or BSD
dd32cf
Url: https://github.com/linux-rdma/rdma-core
dd32cf
Source: https://github.com/linux-rdma/rdma-core/releases/download/v%{version}/%{name}-%{version}.tar.gz
dd32cf
Source1: ibdev2netdev
dd32cf
Patch1: redhat-kernel-init-libi40iw-no-longer-tech-preview.patch
dd32cf
Patch2: i40iw-autoload-breaks-suspend.patch
bbe12a
Patch3: udev-keep-NAME_KERNEL-as-default-interface-naming-co.patch
bbe12a
# stable-vX patches
bbe12a
Patch101: 0001-ABI-Files.patch
bbe12a
Patch102: 0002-build-Do-not-enable-Wredundant-decls-twice.patch
bbe12a
Patch103: 0003-man-Fix-wrong-field-in-ibv_wr_post-s-man-page.patch
bbe12a
Patch104: 0004-pyverbs-Fix-WC-creation-process.patch
bbe12a
Patch105: 0005-pyverbs-Fix-CQ-and-PD-assignment-in-QPAttr.patch
bbe12a
Patch106: 0006-verbs-Set-missing-errno-in-ibv_cmd_reg_mr.patch
bbe12a
Patch107: 0007-mlx5-Allow-insertion-of-duplicate-rules-using-DR-API.patch
bbe12a
Patch108: 0008-cxgb4-free-appropriate-pointer-in-error-case.patch
bbe12a
Patch109: 0009-cxgb4-always-query-device-before-initializing-chip-v.patch
bbe12a
Patch110: 0010-buildlib-Remove-travis-CI.patch
bbe12a
Patch111: 0011-build-Run-CI-builds-on-the-stable-branches-with-azp-.patch
bbe12a
Patch112: 0012-build-Update-ABI-files.patch
bbe12a
# libbnxt_re support for some new device ids and generation id
bbe12a
Patch201: 0001-bnxt_re-lib-Add-remaining-pci-ids-for-gen-P5-devices.patch
bbe12a
Patch202: 0002-bnxt_re-lib-Recognize-additional-5750x-device-ID-s.patch
bbe12a
# Fix an ibacm segment fault issue
bbe12a
Patch301: 0001-ibacm-Do-not-open-non-InfiniBand-device.patch
dd32cf
# Do not build static libs by default.
dd32cf
%define with_static %{?_with_static: 1} %{?!_with_static: 0}
dd32cf
dd32cf
BuildRequires: binutils
dd32cf
BuildRequires: cmake >= 2.8.11
dd32cf
BuildRequires: gcc
dd32cf
BuildRequires: libudev-devel
dd32cf
BuildRequires: pkgconfig
dd32cf
BuildRequires: pkgconfig(libnl-3.0)
dd32cf
BuildRequires: pkgconfig(libnl-route-3.0)
bbe12a
BuildRequires: python3-docutils
dd32cf
%ifarch %{valgrind_arches}
dd32cf
BuildRequires: valgrind-devel
dd32cf
%endif
dd32cf
BuildRequires: systemd
dd32cf
BuildRequires: python3-devel
dd32cf
BuildRequires: sed
dd32cf
dd32cf
Requires: dracut, kmod, systemd
dd32cf
%if 0%{?fedora} >= 24
dd32cf
Requires: systemd-udev
dd32cf
%endif
dd32cf
# Red Hat/Fedora previously shipped redhat/ as a stand-alone
dd32cf
# package called 'rdma', which we're supplanting here.
dd32cf
Provides: rdma = %{version}-%{release}
dd32cf
Obsoletes: rdma < %{version}-%{release}
dd32cf
Provides: rdma-ndd = %{version}-%{release}
dd32cf
Obsoletes: rdma-ndd < %{version}-%{release}
dd32cf
# the ndd utility moved from infiniband-diags to rdma-core
dd32cf
Conflicts: infiniband-diags <= 1.6.7
dd32cf
Requires: pciutils
bbe12a
# 32-bit arm is missing required arch-specific memory barriers,
bbe12a
ExcludeArch: %{arm}
dd32cf
dd32cf
# Since we recommend developers use Ninja, so should packagers, for consistency.
dd32cf
%define CMAKE_FLAGS %{nil}
bbe12a
%if 0%{?fedora} >= 23 || 0%{?rhel} >= 8
dd32cf
# Ninja was introduced in FC23
dd32cf
BuildRequires: ninja-build
dd32cf
%define CMAKE_FLAGS -GNinja
dd32cf
%define make_jobs ninja-build -v %{?_smp_mflags}
dd32cf
%define cmake_install DESTDIR=%{buildroot} ninja-build install
dd32cf
%else
dd32cf
# Fallback to make otherwise
dd32cf
BuildRequires: make
dd32cf
%define make_jobs make -v %{?_smp_mflags}
dd32cf
%define cmake_install DESTDIR=%{buildroot} make install
dd32cf
%endif
dd32cf
bbe12a
BuildRequires: pandoc
bbe12a
dd32cf
%description
dd32cf
RDMA core userspace infrastructure and documentation, including kernel
dd32cf
driver-specific modprobe override configs, IPoIB network scripts,
dd32cf
dracut rules, and the rdma-ndd utility.
dd32cf
dd32cf
%package devel
dd32cf
Summary: RDMA core development libraries and headers
dd32cf
Requires: %{name}%{?_isa} = %{version}-%{release}
dd32cf
Requires: libibverbs = %{version}-%{release}
dd32cf
Provides: libibverbs-devel = %{version}-%{release}
dd32cf
Obsoletes: libibverbs-devel < %{version}-%{release}
dd32cf
Provides: libibverbs-devel-static = %{version}-%{release}
dd32cf
Obsoletes: libibverbs-devel-static < %{version}-%{release}
dd32cf
Requires: libibumad = %{version}-%{release}
dd32cf
Provides: libibumad-devel = %{version}-%{release}
dd32cf
Obsoletes: libibumad-devel < %{version}-%{release}
dd32cf
Provides: libibumad-static = %{version}-%{release}
dd32cf
Obsoletes: libibumad-static < %{version}-%{release}
dd32cf
Requires: librdmacm = %{version}-%{release}
dd32cf
Provides: librdmacm-devel = %{version}-%{release}
dd32cf
Obsoletes: librdmacm-devel < %{version}-%{release}
dd32cf
Provides: librdmacm-static = %{version}-%{release}
dd32cf
Obsoletes: librdmacm-static < %{version}-%{release}
dd32cf
Requires: ibacm = %{version}-%{release}
dd32cf
Provides: ibacm-devel = %{version}-%{release}
dd32cf
Obsoletes: ibacm-devel < %{version}-%{release}
bbe12a
Requires: infiniband-diags = %{version}-%{release}
bbe12a
Provides: infiniband-diags-devel = %{version}-%{release}
bbe12a
Obsoletes: infiniband-diags-devel < %{version}-%{release}
bbe12a
Provides: libibmad-devel = %{version}-%{release}
bbe12a
Obsoletes: libibmad-devel < %{version}-%{release}
dd32cf
Provides: libcxgb4-static = %{version}-%{release}
dd32cf
Obsoletes: libcxgb4-static < %{version}-%{release}
dd32cf
Provides: libhfi1-static = %{version}-%{release}
dd32cf
Obsoletes: libhfi1-static < %{version}-%{release}
5cb112
%if 0%{?dma_coherent}
dd32cf
Provides: libmlx4-static = %{version}-%{release}
dd32cf
Obsoletes: libmlx4-static < %{version}-%{release}
dd32cf
Provides: libmlx5-static = %{version}-%{release}
dd32cf
Obsoletes: libmlx5-static < %{version}-%{release}
5cb112
%endif
dd32cf
Provides: libi40iw-devel-static = %{version}-%{release}
dd32cf
Obsoletes: libi40iw-devel-static < %{version}-%{release}
dd32cf
dd32cf
%description devel
dd32cf
RDMA core development libraries and headers.
dd32cf
bbe12a
%package -n infiniband-diags
bbe12a
Summary: InfiniBand Diagnostic Tools
bbe12a
Requires: libibumad = %{version}-%{release}
bbe12a
Provides: perl(IBswcountlimits)
bbe12a
Provides: libibmad = %{version}-%{release}
bbe12a
Obsoletes: libibmad < %{version}-%{release}
bbe12a
Obsoletes: openib-diags < 1.3
bbe12a
bbe12a
%description -n infiniband-diags
bbe12a
This package provides IB diagnostic programs and scripts needed to diagnose an
bbe12a
IB subnet.  infiniband-diags now also provides libibmad.  libibmad provides
bbe12a
low layer IB functions for use by the IB diagnostic and management
bbe12a
programs. These include MAD, SA, SMP, and other basic IB functions.
bbe12a
dd32cf
%package -n libibverbs
dd32cf
Summary: A library and drivers for direct userspace use of RDMA (InfiniBand/iWARP/RoCE) hardware
dd32cf
Requires: %{name}%{?_isa} = %{version}-%{release}
dd32cf
Provides: libcxgb4 = %{version}-%{release}
dd32cf
Obsoletes: libcxgb4 < %{version}-%{release}
dd32cf
Provides: libhfi1 = %{version}-%{release}
dd32cf
Obsoletes: libhfi1 < %{version}-%{release}
dd32cf
Provides: libi40iw = %{version}-%{release}
dd32cf
Obsoletes: libi40iw < %{version}-%{release}
5cb112
%if 0%{?dma_coherent}
dd32cf
Provides: libmlx4 = %{version}-%{release}
dd32cf
Obsoletes: libmlx4 < %{version}-%{release}
dd32cf
%ifnarch s390
dd32cf
Provides: libmlx5 = %{version}-%{release}
dd32cf
Obsoletes: libmlx5 < %{version}-%{release}
dd32cf
%endif
5cb112
%endif
dd32cf
Provides: librxe = %{version}-%{release}
dd32cf
Obsoletes: librxe < %{version}-%{release}
dd32cf
Provides: libusnic_verbs = %{version}-%{release}
dd32cf
Obsoletes: libusnic_verbs < %{version}-%{release}
dd32cf
dd32cf
%description -n libibverbs
dd32cf
libibverbs is a library that allows userspace processes to use RDMA
dd32cf
"verbs" as described in the InfiniBand Architecture Specification and
dd32cf
the RDMA Protocol Verbs Specification.  This includes direct hardware
dd32cf
access from userspace to InfiniBand/iWARP adapters (kernel bypass) for
dd32cf
fast path operations.
dd32cf
dd32cf
Device-specific plug-in ibverbs userspace drivers are included:
dd32cf
dd32cf
- libbxnt_re: Broadcom NetXtreme-E RoCE HCA
dd32cf
- libcxgb4: Chelsio T4 iWARP HCA
dd32cf
- libhfi1: Intel Omni-Path HFI
dd32cf
- libhns: HiSilicon Hip06 SoC
dd32cf
- libi40iw: Intel Ethernet Connection X722 RDMA
dd32cf
- libmlx4: Mellanox ConnectX-3 InfiniBand HCA
dd32cf
- libmlx5: Mellanox Connect-IB/X-4+ InfiniBand HCA
dd32cf
- libqedr: QLogic QL4xxx RoCE HCA
dd32cf
- librxe: A software implementation of the RoCE protocol
dd32cf
- libvmw_pvrdma: VMware paravirtual RDMA device
dd32cf
dd32cf
%package -n libibverbs-utils
dd32cf
Summary: Examples for the libibverbs library
dd32cf
Requires: libibverbs%{?_isa} = %{version}-%{release}
dd32cf
dd32cf
%description -n libibverbs-utils
dd32cf
Useful libibverbs example programs such as ibv_devinfo, which
dd32cf
displays information about RDMA devices.
dd32cf
dd32cf
%package -n ibacm
dd32cf
Summary: InfiniBand Communication Manager Assistant
dd32cf
%{?systemd_requires}
dd32cf
Requires: %{name}%{?_isa} = %{version}-%{release}
dd32cf
Requires: libibumad%{?_isa} = %{version}-%{release}
dd32cf
Requires: libibverbs%{?_isa} = %{version}-%{release}
dd32cf
dd32cf
%description -n ibacm
dd32cf
The ibacm daemon helps reduce the load of managing path record lookups on
dd32cf
large InfiniBand fabrics by providing a user space implementation of what
dd32cf
is functionally similar to an ARP cache.  The use of ibacm, when properly
dd32cf
configured, can reduce the SA packet load of a large IB cluster from O(n^2)
dd32cf
to O(n).  The ibacm daemon is started and normally runs in the background,
dd32cf
user applications need not know about this daemon as long as their app
dd32cf
uses librdmacm to handle connection bring up/tear down.  The librdmacm
dd32cf
library knows how to talk directly to the ibacm daemon to retrieve data.
dd32cf
dd32cf
%package -n iwpmd
dd32cf
Summary: iWarp Port Mapper userspace daemon
dd32cf
%{?systemd_requires}
dd32cf
Requires: %{name}%{?_isa} = %{version}-%{release}
dd32cf
dd32cf
%description -n iwpmd
dd32cf
iwpmd provides a userspace service for iWarp drivers to claim
dd32cf
tcp ports through the standard socket interface.
dd32cf
dd32cf
%package -n libibumad
dd32cf
Summary: OpenFabrics Alliance InfiniBand umad (userspace management datagram) library
dd32cf
Requires: %{name}%{?_isa} = %{version}-%{release}
dd32cf
dd32cf
%description -n libibumad
dd32cf
libibumad provides the userspace management datagram (umad) library
dd32cf
functions, which sit on top of the umad modules in the kernel. These
dd32cf
are used by the IB diagnostic and management tools, including OpenSM.
dd32cf
dd32cf
%package -n librdmacm
dd32cf
Summary: Userspace RDMA Connection Manager
dd32cf
Requires: %{name}%{?_isa} = %{version}-%{release}
dd32cf
Requires: libibverbs%{?_isa} = %{version}-%{release}
dd32cf
dd32cf
%description -n librdmacm
dd32cf
librdmacm provides a userspace RDMA Communication Managment API.
dd32cf
dd32cf
%package -n librdmacm-utils
dd32cf
Summary: Examples for the librdmacm library
dd32cf
Requires: librdmacm%{?_isa} = %{version}-%{release}
dd32cf
Requires: libibverbs%{?_isa} = %{version}-%{release}
dd32cf
dd32cf
%description -n librdmacm-utils
dd32cf
Example test programs for the librdmacm library.
dd32cf
dd32cf
%package -n srp_daemon
dd32cf
Summary: Tools for using the InfiniBand SRP protocol devices
dd32cf
Obsoletes: srptools <= 1.0.3
dd32cf
Provides: srptools = %{version}-%{release}
dd32cf
Obsoletes: openib-srptools <= 0.0.6
dd32cf
%{?systemd_requires}
dd32cf
Requires: %{name}%{?_isa} = %{version}-%{release}
dd32cf
Requires: libibumad%{?_isa} = %{version}-%{release}
dd32cf
Requires: libibverbs%{?_isa} = %{version}-%{release}
dd32cf
dd32cf
%description -n srp_daemon
dd32cf
In conjunction with the kernel ib_srp driver, srp_daemon allows you to
dd32cf
discover and use SCSI devices via the SCSI RDMA Protocol over InfiniBand.
dd32cf
dd32cf
%prep
dd32cf
%setup
dd32cf
%patch1 -p1
dd32cf
%patch2 -p1
753b0b
%patch3 -p1
bbe12a
%patch101 -p1
bbe12a
%patch102 -p1
bbe12a
%patch103 -p1
bbe12a
%patch104 -p1
bbe12a
%patch105 -p1
bbe12a
%patch106 -p1
bbe12a
%patch107 -p1
bbe12a
%patch108 -p1
bbe12a
%patch109 -p1
bbe12a
%patch110 -p1
bbe12a
%patch111 -p1
bbe12a
%patch112 -p1
bbe12a
%patch201 -p1
bbe12a
%patch202 -p1
bbe12a
%patch301 -p1
dd32cf
dd32cf
%build
dd32cf
dd32cf
# New RPM defines _rundir, usually as /run
dd32cf
%if 0%{?_rundir:1}
dd32cf
%else
dd32cf
%define _rundir /var/run
dd32cf
%endif
dd32cf
dd32cf
%{!?EXTRA_CMAKE_FLAGS: %define EXTRA_CMAKE_FLAGS %{nil}}
dd32cf
dd32cf
# Pass all of the rpm paths directly to GNUInstallDirs and our other defines.
dd32cf
%cmake %{CMAKE_FLAGS} \
dd32cf
         -DCMAKE_BUILD_TYPE=Release \
dd32cf
         -DCMAKE_INSTALL_BINDIR:PATH=%{_bindir} \
dd32cf
         -DCMAKE_INSTALL_SBINDIR:PATH=%{_sbindir} \
dd32cf
         -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \
dd32cf
         -DCMAKE_INSTALL_LIBEXECDIR:PATH=%{_libexecdir} \
dd32cf
         -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=%{_localstatedir} \
dd32cf
         -DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=%{_sharedstatedir} \
dd32cf
         -DCMAKE_INSTALL_INCLUDEDIR:PATH=%{_includedir} \
dd32cf
         -DCMAKE_INSTALL_INFODIR:PATH=%{_infodir} \
dd32cf
         -DCMAKE_INSTALL_MANDIR:PATH=%{_mandir} \
dd32cf
         -DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \
dd32cf
         -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=%{_unitdir} \
dd32cf
         -DCMAKE_INSTALL_INITDDIR:PATH=%{_initrddir} \
dd32cf
         -DCMAKE_INSTALL_RUNDIR:PATH=%{_rundir} \
dd32cf
         -DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%{name}-%{version} \
dd32cf
         -DCMAKE_INSTALL_UDEV_RULESDIR:PATH=%{_udevrulesdir} \
bbe12a
         -DCMAKE_INSTALL_PERLDIR:PATH=%{perl_vendorlib} \
bbe12a
         -DWITH_IBDIAGS_COMPAT:BOOL=False \
dd32cf
%if %{with_static}
dd32cf
         -DENABLE_STATIC=1 \
dd32cf
%endif
dd32cf
         %{EXTRA_CMAKE_FLAGS}
dd32cf
%make_jobs
dd32cf
dd32cf
%install
dd32cf
%cmake_install
dd32cf
dd32cf
mkdir -p %{buildroot}/%{_sysconfdir}/rdma
dd32cf
dd32cf
# Red Hat specific glue
dd32cf
%global dracutlibdir %{_prefix}/lib/dracut
dd32cf
%global sysmodprobedir %{_prefix}/lib/modprobe.d
dd32cf
mkdir -p %{buildroot}%{_sysconfdir}/udev/rules.d
dd32cf
mkdir -p %{buildroot}%{_libexecdir}
dd32cf
mkdir -p %{buildroot}%{_udevrulesdir}
dd32cf
mkdir -p %{buildroot}%{dracutlibdir}/modules.d/05rdma
dd32cf
mkdir -p %{buildroot}%{sysmodprobedir}
dd32cf
install -D -m0644 redhat/rdma.conf %{buildroot}/%{_sysconfdir}/rdma/rdma.conf
dd32cf
install -D -m0644 redhat/rdma.sriov-vfs %{buildroot}/%{_sysconfdir}/rdma/sriov-vfs
5cb112
%if 0%{?dma_coherent}
dd32cf
install -D -m0644 redhat/rdma.mlx4.conf %{buildroot}/%{_sysconfdir}/rdma/mlx4.conf
5cb112
%endif
dd32cf
install -D -m0644 redhat/rdma.service %{buildroot}%{_unitdir}/rdma.service
dd32cf
install -D -m0755 redhat/rdma.modules-setup.sh %{buildroot}%{dracutlibdir}/modules.d/05rdma/module-setup.sh
dd32cf
install -D -m0644 redhat/rdma.udev-rules %{buildroot}%{_udevrulesdir}/98-rdma.rules
5cb112
%if 0%{?dma_coherent}
dd32cf
install -D -m0644 redhat/rdma.mlx4.sys.modprobe %{buildroot}%{sysmodprobedir}/libmlx4.conf
5cb112
%endif
dd32cf
install -D -m0755 redhat/rdma.kernel-init %{buildroot}%{_libexecdir}/rdma-init-kernel
dd32cf
install -D -m0755 redhat/rdma.sriov-init %{buildroot}%{_libexecdir}/rdma-set-sriov-vf
5cb112
%if 0%{?dma_coherent}
dd32cf
install -D -m0755 redhat/rdma.mlx4-setup.sh %{buildroot}%{_libexecdir}/mlx4-setup.sh
5cb112
%endif
dd32cf
dd32cf
# ibdev2netdev helper script
dd32cf
install -D -m0755 %{SOURCE1} %{buildroot}%{_bindir}/
dd32cf
dd32cf
# ibacm
dd32cf
bin/ib_acme -D . -O
dd32cf
# multi-lib conflict resolution hacks (bug 1429362)
dd32cf
sed -i -e 's|%{_libdir}|/usr/lib|' %{buildroot}%{_mandir}/man7/ibacm_prov.7
dd32cf
sed -i -e 's|%{_libdir}|/usr/lib|' ibacm_opts.cfg
dd32cf
install -D -m0644 ibacm_opts.cfg %{buildroot}%{_sysconfdir}/rdma/
dd32cf
dd32cf
# Delete the package's init.d scripts
dd32cf
rm -rf %{buildroot}/%{_initrddir}/
dd32cf
dd32cf
# Remove ibverbs provider libs we don't support
dd32cf
rm -f %{buildroot}/%{_libdir}/libibverbs/libcxgb3-rdmav*.so
dd32cf
rm -f %{buildroot}/%{_sysconfdir}/libibverbs.d/cxgb3.driver
dd32cf
rm -f %{buildroot}/%{_libdir}/libibverbs/libocrdma-rdmav*.so
dd32cf
rm -f %{buildroot}/%{_sysconfdir}/libibverbs.d/ocrdma.driver
dd32cf
rm -f %{buildroot}/%{_libdir}/libibverbs/libnes-rdmav*.so
dd32cf
rm -f %{buildroot}/%{_sysconfdir}/libibverbs.d/nes.driver
dd32cf
rm -f %{buildroot}/%{_libdir}/libibverbs/libmthca-rdmav*.so
dd32cf
rm -f %{buildroot}/%{_sysconfdir}/libibverbs.d/mthca.driver
dd32cf
rm -f %{buildroot}/%{_libdir}/libibverbs/libipathverbs-rdmav*.so
dd32cf
rm -f %{buildroot}/%{_sysconfdir}/libibverbs.d/ipathverbs.driver
bbe12a
find %{buildroot}  -name '*efa*' -exec rm -fv {} \;
dd32cf
bbe12a
# infiniband-diags
bbe12a
%post -n infiniband-diags -p /sbin/ldconfig
bbe12a
%postun -n infiniband-diags
bbe12a
%ldconfig_postun
bbe12a
bbe12a
# libibverbs
dd32cf
%post -n libibverbs -p /sbin/ldconfig
bbe12a
%postun -n libibverbs
bbe12a
%ldconfig_postun
dd32cf
bbe12a
# libibumad
dd32cf
%post -n libibumad -p /sbin/ldconfig
bbe12a
%postun -n libibumad
bbe12a
%ldconfig_postun
dd32cf
bbe12a
# librdmacm
dd32cf
%post -n librdmacm -p /sbin/ldconfig
bbe12a
%postun -n librdmacm
bbe12a
%ldconfig_postun
dd32cf
bbe12a
# ibacm
dd32cf
%post -n ibacm
dd32cf
%systemd_post ibacm.service
dd32cf
%preun -n ibacm
dd32cf
%systemd_preun ibacm.service
dd32cf
%postun -n ibacm
dd32cf
%systemd_postun_with_restart ibacm.service
dd32cf
bbe12a
# srp_daemon
dd32cf
%post -n srp_daemon
dd32cf
%systemd_post srp_daemon.service
dd32cf
%preun -n srp_daemon
dd32cf
%systemd_preun srp_daemon.service
dd32cf
%postun -n srp_daemon
dd32cf
%systemd_postun_with_restart srp_daemon.service
dd32cf
bbe12a
# iwpmd
dd32cf
%post -n iwpmd
dd32cf
%systemd_post iwpmd.service
dd32cf
%preun -n iwpmd
dd32cf
%systemd_preun iwpmd.service
dd32cf
%postun -n iwpmd
dd32cf
%systemd_postun_with_restart iwpmd.service
dd32cf
dd32cf
%files
dd32cf
%dir %{_sysconfdir}/rdma
dd32cf
%dir %{_docdir}/%{name}-%{version}
dd32cf
%doc %{_docdir}/%{name}-%{version}/README.md
dd32cf
%doc %{_docdir}/%{name}-%{version}/udev.md
dd32cf
%config(noreplace) %{_sysconfdir}/rdma/*
dd32cf
%config(noreplace) %{_sysconfdir}/udev/rules.d/*
5cb112
%if 0%{?dma_coherent}
dd32cf
%ifnarch s390
dd32cf
%config(noreplace) %{_sysconfdir}/modprobe.d/mlx4.conf
dd32cf
%endif
5cb112
%endif
dd32cf
%config(noreplace) %{_sysconfdir}/modprobe.d/truescale.conf
dd32cf
%{_unitdir}/rdma-hw.target
dd32cf
%{_unitdir}/rdma-load-modules@.service
dd32cf
%{_unitdir}/rdma.service
dd32cf
%dir %{dracutlibdir}/modules.d/05rdma
dd32cf
%{dracutlibdir}/modules.d/05rdma/module-setup.sh
bbe12a
%{_udevrulesdir}/../rdma_rename
dd32cf
%{_udevrulesdir}/*
5cb112
%if 0%{?dma_coherent}
dd32cf
%{sysmodprobedir}/libmlx4.conf
5cb112
%endif
dd32cf
%{_libexecdir}/rdma-init-kernel
dd32cf
%{_libexecdir}/rdma-set-sriov-vf
5cb112
%if 0%{?dma_coherent}
dd32cf
%{_libexecdir}/mlx4-setup.sh
5cb112
%endif
dd32cf
%{_libexecdir}/truescale-serdes.cmds
dd32cf
%{_sbindir}/rdma-ndd
dd32cf
%{_bindir}/ibdev2netdev
dd32cf
%{_unitdir}/rdma-ndd.service
dd32cf
%{_mandir}/man8/rdma-ndd.*
dd32cf
%license COPYING.*
dd32cf
dd32cf
%files devel
dd32cf
%doc %{_docdir}/%{name}-%{version}/MAINTAINERS
dd32cf
%dir %{_includedir}/infiniband
dd32cf
%dir %{_includedir}/rdma
dd32cf
%{_includedir}/infiniband/*
dd32cf
%{_includedir}/rdma/*
dd32cf
%if %{with_static}
dd32cf
%{_libdir}/lib*.a
dd32cf
%endif
dd32cf
%{_libdir}/lib*.so
dd32cf
%{_libdir}/pkgconfig/*.pc
dd32cf
%{_mandir}/man3/ibv_*
dd32cf
%{_mandir}/man3/rdma*
dd32cf
%{_mandir}/man3/umad*
dd32cf
%{_mandir}/man3/*_to_ibv_rate.*
5cb112
if 0%{?dma_coherent}
dd32cf
%ifnarch s390
dd32cf
%{_mandir}/man3/mlx4dv*
dd32cf
%{_mandir}/man3/mlx5dv*
dd32cf
%{_mandir}/man7/mlx5dv*
dd32cf
%endif
5cb112
%endif
dd32cf
%{_mandir}/man7/rdma_cm.*
bbe12a
%{_mandir}/man3/ibnd_*
bbe12a
bbe12a
%files -n infiniband-diags
bbe12a
%{_sbindir}/ibaddr
bbe12a
%{_sbindir}/ibnetdiscover
bbe12a
%{_sbindir}/ibping
bbe12a
%{_sbindir}/ibportstate
bbe12a
%{_sbindir}/ibroute
bbe12a
%{_sbindir}/ibstat
bbe12a
%{_sbindir}/ibsysstat
bbe12a
%{_sbindir}/ibtracert
bbe12a
%{_sbindir}/perfquery
bbe12a
%{_sbindir}/sminfo
bbe12a
%{_sbindir}/smpdump
bbe12a
%{_sbindir}/smpquery
bbe12a
%{_sbindir}/saquery
bbe12a
%{_sbindir}/vendstat
bbe12a
%{_sbindir}/iblinkinfo
bbe12a
%{_sbindir}/ibqueryerrors
bbe12a
%{_sbindir}/ibcacheedit
bbe12a
%{_sbindir}/ibccquery
bbe12a
%{_sbindir}/ibccconfig
bbe12a
%{_sbindir}/dump_fts
bbe12a
%{_sbindir}/ibhosts
bbe12a
%{_sbindir}/ibswitches
bbe12a
%{_sbindir}/ibnodes
bbe12a
%{_sbindir}/ibrouters
bbe12a
%{_sbindir}/ibfindnodesusing.pl
bbe12a
%{_sbindir}/ibidsverify.pl
bbe12a
%{_sbindir}/check_lft_balance.pl
bbe12a
%{_sbindir}/dump_lfts.sh
bbe12a
%{_sbindir}/dump_mfts.sh
bbe12a
%{_sbindir}/ibstatus
bbe12a
%{_libdir}/libibmad*.so.*
bbe12a
%{_libdir}/libibnetdisc*.so.*
bbe12a
%{_mandir}/man8/infiniband-diags*
bbe12a
%{_mandir}/man8/check_lft_balance*
bbe12a
%{_mandir}/man8/dump*
bbe12a
%{_mandir}/man8/ib*
bbe12a
%{_mandir}/man8/perfquery*
bbe12a
%{_mandir}/man8/saquery*
bbe12a
%{_mandir}/man8/sminfo*
bbe12a
%{_mandir}/man8/smp*
bbe12a
%{_mandir}/man8/vendstat*
bbe12a
%{perl_vendorlib}/IBswcountlimits.pm
bbe12a
%config(noreplace) %{_sysconfdir}/infiniband-diags/error_thresholds
bbe12a
%config(noreplace) %{_sysconfdir}/infiniband-diags/ibdiag.conf
dd32cf
dd32cf
%files -n libibverbs
dd32cf
%dir %{_sysconfdir}/libibverbs.d
dd32cf
%dir %{_libdir}/libibverbs
dd32cf
%{_libdir}/libibverbs*.so.*
dd32cf
%{_libdir}/libibverbs/*.so
5cb112
%if 0%{?dma_coherent}
dd32cf
%ifnarch s390
dd32cf
%{_libdir}/libmlx4.so.*
dd32cf
%{_libdir}/libmlx5.so.*
dd32cf
%endif
5cb112
%endif
dd32cf
%config(noreplace) %{_sysconfdir}/libibverbs.d/*.driver
dd32cf
%doc %{_docdir}/%{name}-%{version}/libibverbs.md
dd32cf
%doc %{_docdir}/%{name}-%{version}/rxe.md
dd32cf
%doc %{_docdir}/%{name}-%{version}/tag_matching.md
dd32cf
%{_bindir}/rxe_cfg
dd32cf
%{_mandir}/man7/rxe*
5cb112
%if 0%{?dma_coherent}
dd32cf
%ifnarch s390
dd32cf
%{_mandir}/man7/mlx4dv*
dd32cf
%{_mandir}/man7/mlx5dv*
dd32cf
%endif
5cb112
%endif
dd32cf
%{_mandir}/man8/rxe*
dd32cf
dd32cf
%files -n libibverbs-utils
dd32cf
%{_bindir}/ibv_*
dd32cf
%{_mandir}/man1/ibv_*
dd32cf
dd32cf
%files -n ibacm
dd32cf
%config(noreplace) %{_sysconfdir}/rdma/ibacm_opts.cfg
dd32cf
%{_bindir}/ib_acme
dd32cf
%{_sbindir}/ibacm
dd32cf
%{_mandir}/man1/ibacm.*
dd32cf
%{_mandir}/man1/ib_acme.*
dd32cf
%{_mandir}/man7/ibacm.*
dd32cf
%{_mandir}/man7/ibacm_prov.*
dd32cf
%{_unitdir}/ibacm.service
dd32cf
%{_unitdir}/ibacm.socket
dd32cf
%dir %{_libdir}/ibacm
dd32cf
%{_libdir}/ibacm/*
dd32cf
%doc %{_docdir}/%{name}-%{version}/ibacm.md
dd32cf
dd32cf
%files -n iwpmd
dd32cf
%{_sbindir}/iwpmd
dd32cf
%{_unitdir}/iwpmd.service
dd32cf
%config(noreplace) %{_sysconfdir}/iwpmd.conf
dd32cf
%{_mandir}/man8/iwpmd.*
dd32cf
%{_mandir}/man5/iwpmd.*
dd32cf
dd32cf
%files -n libibumad
dd32cf
%{_libdir}/libibumad*.so.*
dd32cf
dd32cf
%files -n librdmacm
dd32cf
%{_libdir}/librdmacm*.so.*
dd32cf
%dir %{_libdir}/rsocket
dd32cf
%{_libdir}/rsocket/librspreload.so*
dd32cf
%doc %{_docdir}/%{name}-%{version}/librdmacm.md
dd32cf
%{_mandir}/man7/rsocket.*
dd32cf
dd32cf
%files -n librdmacm-utils
dd32cf
%{_bindir}/cmtime
dd32cf
%{_bindir}/mckey
dd32cf
%{_bindir}/rcopy
dd32cf
%{_bindir}/rdma_client
dd32cf
%{_bindir}/rdma_server
dd32cf
%{_bindir}/rdma_xclient
dd32cf
%{_bindir}/rdma_xserver
dd32cf
%{_bindir}/riostream
dd32cf
%{_bindir}/rping
dd32cf
%{_bindir}/rstream
dd32cf
%{_bindir}/ucmatose
dd32cf
%{_bindir}/udaddy
dd32cf
%{_bindir}/udpong
dd32cf
%{_mandir}/man1/cmtime.*
dd32cf
%{_mandir}/man1/mckey.*
dd32cf
%{_mandir}/man1/rcopy.*
dd32cf
%{_mandir}/man1/rdma_client.*
dd32cf
%{_mandir}/man1/rdma_server.*
dd32cf
%{_mandir}/man1/rdma_xclient.*
dd32cf
%{_mandir}/man1/rdma_xserver.*
dd32cf
%{_mandir}/man1/riostream.*
dd32cf
%{_mandir}/man1/rping.*
dd32cf
%{_mandir}/man1/rstream.*
dd32cf
%{_mandir}/man1/ucmatose.*
dd32cf
%{_mandir}/man1/udaddy.*
dd32cf
%{_mandir}/man1/udpong.*
dd32cf
dd32cf
%files -n srp_daemon
dd32cf
%config(noreplace) %{_sysconfdir}/srp_daemon.conf
dd32cf
%{_libexecdir}/srp_daemon/start_on_all_ports
dd32cf
%{_unitdir}/srp_daemon.service
dd32cf
%{_unitdir}/srp_daemon_port@.service
dd32cf
%{_sbindir}/ibsrpdm
dd32cf
%{_sbindir}/srp_daemon
dd32cf
%{_sbindir}/srp_daemon.sh
dd32cf
%{_sbindir}/run_srp_daemon
dd32cf
%{_mandir}/man1/ibsrpdm.1*
dd32cf
%{_mandir}/man1/srp_daemon.1*
dd32cf
%{_mandir}/man5/srp_daemon.service.5*
dd32cf
%{_mandir}/man5/srp_daemon_port@.service.5*
dd32cf
%doc %{_docdir}/%{name}-%{version}/ibsrpdm.md
dd32cf
dd32cf
%changelog
bbe12a
* Fri Feb 07 2020 Honggang Li <honli@redhat.com> - 26.0-8
bbe12a
- Fix an ibacm segfault issue for dual port HCA support IB and Ethernet
bbe12a
- Resolves: bz1793736
bbe12a
bbe12a
* Tue Dec 17 2019 Honggang Li <honli@redhat.com> - 26.0-7
bbe12a
- Build with Ninja.
bbe12a
- Resolves: bz1783254
bbe12a
bbe12a
* Fri Dec 13 2019 Honggang Li <honli@redhat.com> - 26.0-6
bbe12a
- Remove dangling symlink
bbe12a
- Resolves: bz1782828
bbe12a
bbe12a
* Wed Dec 11 2019 Honggang Li <honli@redhat.com> - 26.0-5
bbe12a
- Remove EFA driver
bbe12a
- Fix rpm dependency issue
bbe12a
- Resolves: bz1781454, bz1781457
bbe12a
bbe12a
* Mon Dec 09 2019 Honggang Li <honli@redhat.com> - 26.0-4
bbe12a
- libbnxt_re support for some new device ids and generation id
bbe12a
- Resolves: bz1779948
bbe12a
bbe12a
* Tue Nov 19 2019 Jarod Wilson <jarod@redhat.com> - 26.0-3
bbe12a
- Make rdma-core-devel Obsoletes infiniband-diags due to man3/ibnd_*
bbe12a
- Related: rhbz#1722257
bbe12a
bbe12a
* Thu Nov 14 2019 Jarod Wilson <jarod@redhat.com> - 26.0-2
bbe12a
- Add Obsoletes/Provides pair for infiniband-diags-devel
bbe12a
- Pull in upstream stable-v26 branch patches
bbe12a
- Fix %%postun scriptlet failures by removing superfluous -p options
bbe12a
- Add new BuildRequires: on pandoc
bbe12a
- Related: rhbz#1722257
bbe12a
bbe12a
* Thu Nov 14 2019 Jarod Wilson <jarod@redhat.com> - 26.0-1
bbe12a
- Update to upstream v26 release for features and fixes
bbe12a
- Resolves: rhbz#1722257
bbe12a
bbe12a
* Tue Jul 23 2019 Jarod Wilson <jarod@redhat.com> - 24.0-1
bbe12a
- Update to upstream v24 release for features and fixes
bbe12a
753b0b
* Mon Jun 24 2019 Jarod Wilson <jarod@redhat.com> - 22.3-1
753b0b
- Update to upstream v22.3 stable release for fixes
753b0b
- Enable support for Broadcom 57500 hardware
753b0b
- Enable support for Mellanox ConnectX-6 DX hardware
753b0b
- Resolves: rhbz#1678276
753b0b
- Resolves: rhbz#1687435
753b0b
dd32cf
* Thu Jan 10 2019 Jarod Wilson <jarod@redhat.com> - 22-2
dd32cf
- Fix up covscan shellcheck warnings in ibdev2netdev
dd32cf
- Related: rhbz#1643904
dd32cf
dd32cf
* Thu Jan 10 2019 Jarod Wilson <jarod@redhat.com> - 22-1
dd32cf
- Update to upstream v22 release for features and fixes
dd32cf
- Include legacy ibdev2netdev helper script
dd32cf
- Resolves: rhbz#1643904
dd32cf
dd32cf
* Tue Nov 27 2018 Jarod Wilson <jarod@redhat.com> - 19.1-1
dd32cf
- Update to v19.1 stable branch release
dd32cf
- Fix SRQ support in libi40iw
dd32cf
- Backport libqedr support for SRQ
dd32cf
- Resolves: rhbz#1639692
dd32cf
- Switch rxe_cfg from ifconfig to iproute2
dd32cf
- Resolves: rhbz#1640637
dd32cf
dd32cf
* Thu Aug 30 2018 Jarod Wilson <jarod@redhat.com> - 19-3
dd32cf
- Drop R: initscripts, since we've removed initscripts
dd32cf
- Resolves: rhbz#1610284
dd32cf
dd32cf
* Fri Aug  3 2018 Florian Weimer <fweimer@redhat.com> - 19-2
dd32cf
- Honor %%{valgrind_arches}
dd32cf
dd32cf
* Thu Jul 19 2018 Jarod Wilson <jarod@redhat.com> 19-1
dd32cf
- Rebase to upstream rdma-core v19 release
dd32cf
dd32cf
* Mon Jul 02 2018 Jarod Wilson <jarod@redhat.com> 18.1-3
dd32cf
- Adjust python deps for python3-only world
dd32cf
dd32cf
* Thu Jun 21 2018 Jarod Wilson <jarod@redhat.com> 18.1-2
dd32cf
- Disable nes, mthca and ipath libibverbs providers, this
dd32cf
  old hardware is no longer supported, and fix disabling
dd32cf
  of cxgb3 and ocrdma
dd32cf
dd32cf
* Fri Jun 15 2018 Jarod Wilson <jarod@redhat.com> 18.1-1
dd32cf
- Rebase to upstream rdma-core v18.1 stable release
dd32cf
dd32cf
* Thu May 03 2018 Jarod Wilson <jarod@redhat.com> 17.1-2
dd32cf
- Match kernel ABI with kernel v4.17 for 32-on-64bit compatibility
dd32cf
dd32cf
* Mon Apr 16 2018 Jarod Wilson <jarod@redhat.com> 17.1-1
dd32cf
- Rebase to upstream rdma-core v17.1 stable release
dd32cf
- No more libibcm or ib sysv initscripts
dd32cf
- Remove ibverbs provider for unsupported CXGB3 devices
dd32cf
- Remove ibverbs provider for unsupported OCRDMA devices
dd32cf
- Resolves: rhbz#1492324
dd32cf
- Resolves: rhbz#1492924
dd32cf
- Resolves: rhbz#1503621
dd32cf
- Resolves: rhbz#1504528
dd32cf
- Resolves: rhbz#1504581
dd32cf
- Resolves: rhbz#1503723
dd32cf
dd32cf
* Tue Feb 27 2018 Jarod Wilson <jarod@redhat.com> 15-7
dd32cf
- i40iw: revoke systemd udev rules auto-load on i40e hardware, due to
dd32cf
  causing problems with suspend and resume, and fall back to load via
dd32cf
  systemd rdma initscript.
dd32cf
- Resolves: rhbz#1561566
dd32cf
dd32cf
* Mon Feb 19 2018 Jarod Wilson <jarod@redhat.com> 15-6
dd32cf
- libbnxt_re: fix lat test failure in event mode
dd32cf
- Resolves: rhbz#1545248
dd32cf
dd32cf
* Tue Feb 06 2018 Jarod Wilson <jarod@redhat.com> 15-5
dd32cf
- libmlx4: report RSS caps for improved DPDK support
dd32cf
- Fix double mutex unlock in iwpmd
dd32cf
- Resolves: rhbz#1527350
dd32cf
- Resolves: rhbz#1542362
dd32cf
dd32cf
* Mon Jan 15 2018 Jarod Wilson <jarod@redhat.com> 15-4
dd32cf
- Add support for extended join multicast API in librdmacm
dd32cf
- Add support for striding RQ on mlx5
dd32cf
- Resolves: rhbz#1515487, rhbz#1516571
dd32cf
dd32cf
* Tue Dec 26 2017 Honggang Li <honli@redhat.com> 15-3
dd32cf
- srp_daemon: Don't create async_ev_thread if only run once
dd32cf
- srp_daemon: Remove unsupported systemd configurations
dd32cf
- srp_daemon: Start srp_daemon service after network target
dd32cf
- Resolves: bz1525193
dd32cf
- Resolves: bz1528671
dd32cf
dd32cf
* Mon Nov 13 2017 Jarod Wilson <jarod@redhat.com> 15-2
dd32cf
- Fix ibacm segfault and improper multicast handling
dd32cf
- Resolves: rhbz#1502745
dd32cf
- Resolves: rhbz#1502759
dd32cf
dd32cf
* Fri Sep 22 2017 Jarod Wilson <jarod@redhat.com> 15-1
dd32cf
- Update to upstream v15 release
dd32cf
- Resolves: rhbz#1494607
dd32cf
dd32cf
* Wed Aug 09 2017 Jarod Wilson <jarod@redhat.com> - 14-4
dd32cf
- Make use of systemd_requires, own srp_daemon dir
dd32cf
dd32cf
* Tue Aug 01 2017 Jarod Wilson <jarod@redhat.com> - 14-3
dd32cf
- Revert work-around for ppc64le library issues
dd32cf
- Add Obsoletes/Provides for libusnic_verbs
dd32cf
dd32cf
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 14-2
dd32cf
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
dd32cf
dd32cf
* Tue Jul 25 2017 Jarod Wilson <jarod@redhat.com> - 14-1
dd32cf
- Update to upstream v14 release
dd32cf
- Sync packaging updates from RHEL and upstream
dd32cf
dd32cf
* Tue May 30 2017 Jarod Wilson <jarod@redhat.com> 13-7
dd32cf
- Add support for mlx5 Expand raw packet capabilities
dd32cf
- Resolves: rhbz#1456561
dd32cf
dd32cf
* Mon May 22 2017 Jarod Wilson <jarod@redhat.com> 13-6
dd32cf
- Clean up htonll/ntohll handling for opa-ff/infiniband-diags compile
dd32cf
- Add necessary Provides/Obsoletes for old -static packages
dd32cf
- Remove ibverbs providers that we aren't currently able to support
dd32cf
- Resolves: rhbz#1453096, rhbz#1451607
dd32cf
dd32cf
* Wed Apr 26 2017 Honggang Li <honli@redhat.com> 13-5
dd32cf
- rdma-ndd: Fix a busy loop for aarch64 platform
dd32cf
- Resolves: bz1442789
dd32cf
dd32cf
* Thu Apr 13 2017 Honggang Li <honli@redhat.com> 13-4
dd32cf
- srp_daemon: Don't rely on attribute offset in get_shared_pkeys
dd32cf
- Resolves: bz1432964
dd32cf
dd32cf
* Mon Apr 03 2017 Jarod Wilson <jarod@redhat.com> - 13-3
dd32cf
- Add necessary Provides/Obsoletes for rdma-ndd (rhbz 1437804)
dd32cf
dd32cf
* Mon Mar 27 2017 Jarod Wilson <jarod@redhat.com> - 13-2
dd32cf
- Build what we can on s390, don't exclude it entirely (rhbz 1434029)
dd32cf
dd32cf
* Tue Mar 21 2017 Jarod Wilson <jarod@redhat.com> - 13-1
dd32cf
- Update to rdma-core v13 release (rhbz 1404035)
dd32cf
- Mellanox mlx5 Direct Verbs support (rhbz 1426430)
dd32cf
- Get build working on s390x, less mlx5 (rhbz 1434029)
dd32cf
dd32cf
* Mon Mar 20 2017 Jarod Wilson <jarod@redhat.com> - 12-5
dd32cf
- Fix up multi-lib conflicts in ibacm files (rhbz 1429362)
dd32cf
dd32cf
* Mon Mar 13 2017 Jarod Wilson <jarod@redhat.com> - 12-4
dd32cf
- Clean up devel files list
dd32cf
- Fix up a few dependencies rpmdiff complained about (rhbz 1404035)
dd32cf
- Add Requires: pciutils for dracut to behave in minimalist cases (rhbz 1429046)
dd32cf
- Adjust Conflicts: on infiniband-diags to match RHEL packaging (rhbz 1428785)
dd32cf
dd32cf
* Mon Mar 06 2017 Jarod Wilson <jarod@redhat.com> - 12-3
dd32cf
- Take libi40iw out of tech-preview state (rhbz 1428930)
dd32cf
- Add ibv_*_pingpong man pages (rhbz 1416541)
dd32cf
dd32cf
* Thu Feb 09 2017 Jarod Wilson <jarod@redhat.com> - 12-2
dd32cf
- Make sure ocrdma module is classified as tech-preview (rhbz 1418224)
dd32cf
dd32cf
* Fri Jan 27 2017 Jarod Wilson <jarod@redhat.com> - 12-1
dd32cf
- Update to upstream final v12 release
dd32cf
dd32cf
* Wed Jan 25 2017 Jarod Wilson <jarod@redhat.com> - 12-0.1.rc3.1
dd32cf
- Initial import to Fedora package database via post-v12-rc3 git snapshot