6b6c31
Name: rdma-core
dd836b
Version: 22.4
6b6c31
Release: 3%{?dist}
6b6c31
Summary: RDMA core userspace libraries and daemons
6b6c31
6b6c31
# Almost everything is licensed under the OFA dual GPLv2, 2 Clause BSD license
6b6c31
#  providers/ipathverbs/ Dual licensed using a BSD license with an extra patent clause
6b6c31
#  providers/rxe/ Incorporates code from ipathverbs and contains the patent clause
6b6c31
#  providers/hfi1verbs Uses the 3 Clause BSD license
6b6c31
License: GPLv2 or BSD
6b6c31
Url: https://github.com/linux-rdma/rdma-core
6b6c31
Source: https://github.com/linux-rdma/rdma-core/releases/download/v%{version}/%{name}-%{version}.tar.gz
6b6c31
# Red Hat patches
6b6c31
Patch1: 0001-redhat-kernel-init-ocrdma-is-tech-preview-too.patch
6b6c31
Patch2: 0002-redhat-kernel-init-libi40iw-no-longer-tech-preview.patch
6b6c31
Patch3: 0003-rdma-hw-modules.rules-i40iw-autoload-breaks-suspend.patch
6b6c31
Patch4: 0004-Revert-redhat-remove-files-that-we-no-longer-use.patch
6b6c31
Patch5: 0005-fix_mtu_limiting_for_ipoib.patch
6b6c31
Patch6: 0006-srp_daemon-Remove-unsupported-systemd-configurations.patch
6b6c31
Patch7: 0007-srp_daemon-srp_daemon.service-should-be-started-afte.patch
dd836b
Patch8: rdma-core-unclamp-ipoib-mtu.patch
dd836b
# Additional upstream patches from branch v23
dd836b
Patch11: 0101-Update-kernel-headers.patch
dd836b
Patch12: 0102-bnxt_re-lib-Enable-Broadcom-s-57500-RoCE-adapter.patch
dd836b
Patch13: 0103-mlx5-Add-new-device-IDs.patch
dd836b
# Additional upstream patches from stable-vX/master branch
dd836b
Patch101: 0001-srp_daemon-fix-a-double-free-segment-fault-for-ibsrp.patch
dd836b
Patch102: 0002-cxgb4-free-appropriate-pointer-in-error-case.patch
dd836b
Patch103: 0003-man-Fix-return-value-for-ibv_reg_dm_mr.patch
dd836b
# Patches backported from master branch
dd836b
Patch104: 0004-Update-kernel-headers.patch
dd836b
Patch105: 0005-mlx5-Support-scatter-to-CQE-over-DCT-QP.patch
dd836b
Patch106: 0001-ibacm-Do-not-open-non-InfiniBand-device.patch
6b6c31
# Do not build static libs by default.
6b6c31
%define with_static %{?_with_static: 1} %{?!_with_static: 0}
6b6c31
6b6c31
BuildRequires: binutils
6b6c31
BuildRequires: cmake >= 2.8.11
6b6c31
BuildRequires: gcc
6b6c31
BuildRequires: libudev-devel
6b6c31
BuildRequires: pkgconfig
6b6c31
BuildRequires: pkgconfig(libnl-3.0)
6b6c31
BuildRequires: pkgconfig(libnl-route-3.0)
6b6c31
%ifnarch s390
6b6c31
BuildRequires: valgrind-devel
6b6c31
%endif
6b6c31
BuildRequires: systemd
6b6c31
BuildRequires: python
6b6c31
BuildRequires: sed
6b6c31
6b6c31
Requires: dracut, kmod, initscripts, systemd
6b6c31
%if 0%{?fedora} >= 24
6b6c31
Requires: systemd-udev
6b6c31
%endif
6b6c31
# Red Hat/Fedora previously shipped redhat/ as a stand-alone
6b6c31
# package called 'rdma', which we're supplanting here.
6b6c31
Provides: rdma = %{version}-%{release}
6b6c31
Obsoletes: rdma < %{version}-%{release}
6b6c31
Provides: rdma-ndd = %{version}-%{release}
6b6c31
Obsoletes: rdma-ndd < %{version}-%{release}
6b6c31
# libibcm was deprecated and removed
6b6c31
Provides: libibcm = %{version}-%{release}
6b6c31
Obsoletes: libibcm < %{version}-%{release}
6b6c31
# the ndd utility moved from infiniband-diags to rdma-core
6b6c31
Conflicts: infiniband-diags <= 1.6.5
6b6c31
Requires: pciutils
6b6c31
# 32-bit arm is missing required arch-specific memory barriers,
6b6c31
ExcludeArch: %{arm}
6b6c31
6b6c31
# Since we recommend developers use Ninja, so should packagers, for consistency.
6b6c31
%define CMAKE_FLAGS %{nil}
6b6c31
%if 0%{?fedora} >= 23
6b6c31
# Ninja was introduced in FC23
6b6c31
BuildRequires: ninja-build
6b6c31
%define CMAKE_FLAGS -GNinja
6b6c31
%define make_jobs ninja-build -v %{?_smp_mflags}
6b6c31
%define cmake_install DESTDIR=%{buildroot} ninja-build install
6b6c31
%else
6b6c31
# Fallback to make otherwise
6b6c31
BuildRequires: make
6b6c31
%define make_jobs make -v %{?_smp_mflags}
6b6c31
%define cmake_install DESTDIR=%{buildroot} make install
6b6c31
%endif
6b6c31
6b6c31
%description
6b6c31
RDMA core userspace infrastructure and documentation, including initscripts,
6b6c31
kernel driver-specific modprobe override configs, IPoIB network scripts,
6b6c31
dracut rules, and the rdma-ndd utility.
6b6c31
6b6c31
%package devel
6b6c31
Summary: RDMA core development libraries and headers
6b6c31
Requires: %{name}%{?_isa} = %{version}-%{release}
6b6c31
Requires: libibverbs = %{version}-%{release}
6b6c31
Provides: libibverbs-devel = %{version}-%{release}
6b6c31
Obsoletes: libibverbs-devel < %{version}-%{release}
6b6c31
Provides: libibverbs-devel-static = %{version}-%{release}
6b6c31
Obsoletes: libibverbs-devel-static < %{version}-%{release}
6b6c31
Requires: libibumad = %{version}-%{release}
6b6c31
Provides: libibumad-devel = %{version}-%{release}
6b6c31
Obsoletes: libibumad-devel < %{version}-%{release}
6b6c31
Provides: libibumad-static = %{version}-%{release}
6b6c31
Obsoletes: libibumad-static < %{version}-%{release}
6b6c31
Requires: librdmacm = %{version}-%{release}
6b6c31
Provides: librdmacm-devel = %{version}-%{release}
6b6c31
Obsoletes: librdmacm-devel < %{version}-%{release}
6b6c31
Provides: librdmacm-static = %{version}-%{release}
6b6c31
Obsoletes: librdmacm-static < %{version}-%{release}
6b6c31
Requires: ibacm = %{version}-%{release}
6b6c31
Provides: ibacm-devel = %{version}-%{release}
6b6c31
Obsoletes: ibacm-devel < %{version}-%{release}
6b6c31
Provides: libcxgb3-static = %{version}-%{release}
6b6c31
Obsoletes: libcxgb3-static < %{version}-%{release}
6b6c31
Provides: libcxgb4-static = %{version}-%{release}
6b6c31
Obsoletes: libcxgb4-static < %{version}-%{release}
6b6c31
Provides: libhfi1-static = %{version}-%{release}
6b6c31
Obsoletes: libhfi1-static < %{version}-%{release}
6b6c31
Provides: libipathverbs-static = %{version}-%{release}
6b6c31
Obsoletes: libipathverbs-static < %{version}-%{release}
6b6c31
Provides: libmlx4-static = %{version}-%{release}
6b6c31
Obsoletes: libmlx4-static < %{version}-%{release}
6b6c31
Provides: libmlx5-static = %{version}-%{release}
6b6c31
Obsoletes: libmlx5-static < %{version}-%{release}
6b6c31
Provides: libnes-static = %{version}-%{release}
6b6c31
Obsoletes: libnes-static < %{version}-%{release}
6b6c31
Provides: libocrdma-static = %{version}-%{release}
6b6c31
Obsoletes: libocrdma-static < %{version}-%{release}
6b6c31
Provides: libi40iw-devel-static = %{version}-%{release}
6b6c31
Obsoletes: libi40iw-devel-static < %{version}-%{release}
6b6c31
Provides: libmthca-static = %{version}-%{release}
6b6c31
Obsoletes: libmthca-static < %{version}-%{release}
6b6c31
Provides: libehca-devel = %{version}-%{release}
6b6c31
Obsoletes: libehca-devel < %{version}-%{release}
6b6c31
Provides: libehca-static = %{version}-%{release}
6b6c31
Obsoletes: libehca-static < %{version}-%{release}
6b6c31
6b6c31
%description devel
6b6c31
RDMA core development libraries and headers.
6b6c31
6b6c31
%package -n libibverbs
6b6c31
Summary: A library and drivers for direct userspace use of RDMA (InfiniBand/iWARP/RoCE) hardware
6b6c31
Requires: %{name}%{?_isa} = %{version}-%{release}
6b6c31
Provides: libcxgb3 = %{version}-%{release}
6b6c31
Obsoletes: libcxgb3 < %{version}-%{release}
6b6c31
Provides: libcxgb4 = %{version}-%{release}
6b6c31
Obsoletes: libcxgb4 < %{version}-%{release}
6b6c31
Provides: libhfi1 = %{version}-%{release}
6b6c31
Obsoletes: libhfi1 < %{version}-%{release}
6b6c31
Provides: libi40iw = %{version}-%{release}
6b6c31
Obsoletes: libi40iw < %{version}-%{release}
6b6c31
Provides: libipathverbs = %{version}-%{release}
6b6c31
Obsoletes: libipathverbs < %{version}-%{release}
6b6c31
Provides: libmlx4 = %{version}-%{release}
6b6c31
Obsoletes: libmlx4 < %{version}-%{release}
6b6c31
%ifnarch s390
6b6c31
Provides: libmlx5 = %{version}-%{release}
6b6c31
Obsoletes: libmlx5 < %{version}-%{release}
6b6c31
%endif
6b6c31
Provides: libmthca = %{version}-%{release}
6b6c31
Obsoletes: libmthca < %{version}-%{release}
6b6c31
Provides: libnes = %{version}-%{release}
6b6c31
Obsoletes: libnes < %{version}-%{release}
6b6c31
Provides: libocrdma = %{version}-%{release}
6b6c31
Obsoletes: libocrdma < %{version}-%{release}
6b6c31
Provides: librxe = %{version}-%{release}
6b6c31
Obsoletes: librxe < %{version}-%{release}
6b6c31
Provides: libusnic_verbs = %{version}-%{release}
6b6c31
Obsoletes: libusnic_verbs < %{version}-%{release}
6b6c31
Provides: libehca = %{version}-%{release}
6b6c31
Obsoletes: libehca < %{version}-%{release}
6b6c31
6b6c31
%description -n libibverbs
6b6c31
libibverbs is a library that allows userspace processes to use RDMA
6b6c31
"verbs" as described in the InfiniBand Architecture Specification and
6b6c31
the RDMA Protocol Verbs Specification.  This includes direct hardware
6b6c31
access from userspace to InfiniBand/iWARP adapters (kernel bypass) for
6b6c31
fast path operations.
6b6c31
6b6c31
Device-specific plug-in ibverbs userspace drivers are included:
6b6c31
6b6c31
- libbxnt_re: Broadcom NetXtreme-E RoCE HCA
6b6c31
- libcxgb3: Chelsio T3 iWARP HCA
6b6c31
- libcxgb4: Chelsio T4 iWARP HCA
6b6c31
- libhfi1: Intel Omni-Path HFI
6b6c31
- libhns: HiSilicon Hip06 SoC
6b6c31
- libi40iw: Intel Ethernet Connection X722 RDMA
6b6c31
- libipathverbs: QLogic InfiniPath HCA
6b6c31
- libmlx4: Mellanox ConnectX-3 InfiniBand HCA
6b6c31
- libmlx5: Mellanox Connect-IB/X-4+ InfiniBand HCA
6b6c31
- libmthca: Mellanox InfiniBand HCA
6b6c31
- libnes: NetEffect RNIC
6b6c31
- libocrdma: Emulex OneConnect RDMA/RoCE Device
6b6c31
- libqedr: QLogic QL4xxx RoCE HCA
6b6c31
- librxe: A software implementation of the RoCE protocol
6b6c31
- libvmw_pvrdma: VMware paravirtual RDMA device
6b6c31
6b6c31
%package -n libibverbs-utils
6b6c31
Summary: Examples for the libibverbs library
6b6c31
Requires: libibverbs%{?_isa} = %{version}-%{release}
6b6c31
6b6c31
%description -n libibverbs-utils
6b6c31
Useful libibverbs example programs such as ibv_devinfo, which
6b6c31
displays information about RDMA devices.
6b6c31
6b6c31
%package -n ibacm
6b6c31
Summary: InfiniBand Communication Manager Assistant
6b6c31
Requires(post): systemd-units
6b6c31
Requires(preun): systemd-units
6b6c31
Requires(postun): systemd-units
6b6c31
Requires: %{name}%{?_isa} = %{version}-%{release}
6b6c31
Requires: libibumad%{?_isa} = %{version}-%{release}
6b6c31
Requires: libibverbs%{?_isa} = %{version}-%{release}
6b6c31
6b6c31
%description -n ibacm
6b6c31
The ibacm daemon helps reduce the load of managing path record lookups on
6b6c31
large InfiniBand fabrics by providing a user space implementation of what
6b6c31
is functionally similar to an ARP cache.  The use of ibacm, when properly
6b6c31
configured, can reduce the SA packet load of a large IB cluster from O(n^2)
6b6c31
to O(n).  The ibacm daemon is started and normally runs in the background,
6b6c31
user applications need not know about this daemon as long as their app
6b6c31
uses librdmacm to handle connection bring up/tear down.  The librdmacm
6b6c31
library knows how to talk directly to the ibacm daemon to retrieve data.
6b6c31
6b6c31
%package -n iwpmd
6b6c31
Summary: iWarp Port Mapper userspace daemon
6b6c31
Requires(post): systemd-units
6b6c31
Requires(preun): systemd-units
6b6c31
Requires(postun): systemd-units
6b6c31
Requires: %{name}%{?_isa} = %{version}-%{release}
6b6c31
6b6c31
%description -n iwpmd
6b6c31
iwpmd provides a userspace service for iWarp drivers to claim
6b6c31
tcp ports through the standard socket interface.
6b6c31
6b6c31
%package -n libibumad
6b6c31
Summary: OpenFabrics Alliance InfiniBand umad (userspace management datagram) library
6b6c31
Requires: %{name}%{?_isa} = %{version}-%{release}
6b6c31
6b6c31
%description -n libibumad
6b6c31
libibumad provides the userspace management datagram (umad) library
6b6c31
functions, which sit on top of the umad modules in the kernel. These
6b6c31
are used by the IB diagnostic and management tools, including OpenSM.
6b6c31
6b6c31
%package -n librdmacm
6b6c31
Summary: Userspace RDMA Connection Manager
6b6c31
Requires: %{name}%{?_isa} = %{version}-%{release}
6b6c31
Requires: libibverbs%{?_isa} = %{version}-%{release}
6b6c31
6b6c31
%description -n librdmacm
6b6c31
librdmacm provides a userspace RDMA Communication Managment API.
6b6c31
6b6c31
%package -n librdmacm-utils
6b6c31
Summary: Examples for the librdmacm library
6b6c31
Requires: librdmacm%{?_isa} = %{version}-%{release}
6b6c31
Requires: libibverbs%{?_isa} = %{version}-%{release}
6b6c31
6b6c31
%description -n librdmacm-utils
6b6c31
Example test programs for the librdmacm library.
6b6c31
6b6c31
%package -n srp_daemon
6b6c31
Summary: Tools for using the InfiniBand SRP protocol devices
6b6c31
Obsoletes: srptools <= 1.0.3
6b6c31
Provides: srptools = %{version}-%{release}
6b6c31
Obsoletes: openib-srptools <= 0.0.6
6b6c31
Requires(post): systemd-units
6b6c31
Requires(preun): systemd-units
6b6c31
Requires(postun): systemd-units
6b6c31
Requires: %{name}%{?_isa} = %{version}-%{release}
6b6c31
Requires: libibumad%{?_isa} = %{version}-%{release}
6b6c31
Requires: libibverbs%{?_isa} = %{version}-%{release}
6b6c31
6b6c31
%description -n srp_daemon
6b6c31
In conjunction with the kernel ib_srp driver, srp_daemon allows you to
6b6c31
discover and use SCSI devices via the SCSI RDMA Protocol over InfiniBand.
6b6c31
6b6c31
%prep
6b6c31
%setup
6b6c31
%patch1 -p1
6b6c31
%patch2 -p1
6b6c31
%patch3 -p1
6b6c31
%patch4 -p1
6b6c31
%patch5 -p1
6b6c31
%patch6 -p1
6b6c31
%patch7 -p1
dd836b
%patch8 -p1
dd836b
%patch11 -p1
dd836b
%patch12 -p1
dd836b
%patch13 -p1
6b6c31
%patch101 -p1
6b6c31
%patch102 -p1
6b6c31
%patch103 -p1
dd836b
%patch104 -p1
dd836b
%patch105 -p1
dd836b
%patch106 -p1
6b6c31
6b6c31
%build
6b6c31
6b6c31
# New RPM defines _rundir, usually as /run
6b6c31
%if 0%{?_rundir:1}
6b6c31
%else
6b6c31
%define _rundir /var/run
6b6c31
%endif
6b6c31
6b6c31
%{!?EXTRA_CMAKE_FLAGS: %define EXTRA_CMAKE_FLAGS %{nil}}
6b6c31
6b6c31
# Pass all of the rpm paths directly to GNUInstallDirs and our other defines.
6b6c31
%cmake %{CMAKE_FLAGS} \
6b6c31
         -DCMAKE_BUILD_TYPE=Release \
6b6c31
         -DCMAKE_INSTALL_BINDIR:PATH=%{_bindir} \
6b6c31
         -DCMAKE_INSTALL_SBINDIR:PATH=%{_sbindir} \
6b6c31
         -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \
6b6c31
         -DCMAKE_INSTALL_LIBEXECDIR:PATH=%{_libexecdir} \
6b6c31
         -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=%{_localstatedir} \
6b6c31
         -DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=%{_sharedstatedir} \
6b6c31
         -DCMAKE_INSTALL_INCLUDEDIR:PATH=%{_includedir} \
6b6c31
         -DCMAKE_INSTALL_INFODIR:PATH=%{_infodir} \
6b6c31
         -DCMAKE_INSTALL_MANDIR:PATH=%{_mandir} \
6b6c31
         -DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \
6b6c31
         -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=%{_unitdir} \
6b6c31
         -DCMAKE_INSTALL_INITDDIR:PATH=%{_initrddir} \
6b6c31
         -DCMAKE_INSTALL_RUNDIR:PATH=%{_rundir} \
6b6c31
         -DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%{name}-%{version} \
6b6c31
         -DCMAKE_INSTALL_UDEV_RULESDIR:PATH=%{_udevrulesdir} \
6b6c31
%if %{with_static}
6b6c31
         -DENABLE_STATIC=1 \
6b6c31
%endif
6b6c31
         %{EXTRA_CMAKE_FLAGS}
6b6c31
%make_jobs
6b6c31
6b6c31
%install
6b6c31
%cmake_install
6b6c31
6b6c31
mkdir -p %{buildroot}/%{_sysconfdir}/rdma
6b6c31
6b6c31
# Red Hat specific glue
6b6c31
%global dracutlibdir %{_prefix}/lib/dracut
6b6c31
%global sysmodprobedir %{_prefix}/lib/modprobe.d
6b6c31
mkdir -p %{buildroot}%{_sysconfdir}/udev/rules.d
6b6c31
mkdir -p %{buildroot}%{_libexecdir}
6b6c31
mkdir -p %{buildroot}%{_udevrulesdir}
6b6c31
mkdir -p %{buildroot}%{dracutlibdir}/modules.d/05rdma
6b6c31
mkdir -p %{buildroot}%{sysmodprobedir}
6b6c31
install -D -m0644 redhat/rdma.conf %{buildroot}/%{_sysconfdir}/rdma/rdma.conf
6b6c31
install -D -m0644 redhat/rdma.sriov-vfs %{buildroot}/%{_sysconfdir}/rdma/sriov-vfs
6b6c31
install -D -m0644 redhat/rdma.mlx4.conf %{buildroot}/%{_sysconfdir}/rdma/mlx4.conf
6b6c31
install -D -m0755 redhat/rdma.ifup-ib %{buildroot}/%{_sysconfdir}/sysconfig/network-scripts/ifup-ib
6b6c31
install -D -m0755 redhat/rdma.ifdown-ib %{buildroot}/%{_sysconfdir}/sysconfig/network-scripts/ifdown-ib
6b6c31
install -D -m0644 redhat/rdma.service %{buildroot}%{_unitdir}/rdma.service
6b6c31
install -D -m0755 redhat/rdma.modules-setup.sh %{buildroot}%{dracutlibdir}/modules.d/05rdma/module-setup.sh
6b6c31
install -D -m0644 redhat/rdma.udev-rules %{buildroot}%{_udevrulesdir}/98-rdma.rules
6b6c31
install -D -m0644 redhat/rdma.mlx4.sys.modprobe %{buildroot}%{sysmodprobedir}/libmlx4.conf
6b6c31
install -D -m0755 redhat/rdma.kernel-init %{buildroot}%{_libexecdir}/rdma-init-kernel
6b6c31
install -D -m0755 redhat/rdma.sriov-init %{buildroot}%{_libexecdir}/rdma-set-sriov-vf
6b6c31
install -D -m0755 redhat/rdma.mlx4-setup.sh %{buildroot}%{_libexecdir}/mlx4-setup.sh
6b6c31
6b6c31
# ibacm
6b6c31
bin/ib_acme -D . -O
6b6c31
# multi-lib conflict resolution hacks (bug 1429362)
6b6c31
sed -i -e 's|%{_libdir}|/usr/lib|' %{buildroot}%{_mandir}/man7/ibacm_prov.7
6b6c31
sed -i -e 's|%{_libdir}|/usr/lib|' ibacm_opts.cfg
6b6c31
install -D -m0644 ibacm_opts.cfg %{buildroot}%{_sysconfdir}/rdma/
6b6c31
6b6c31
# Delete the package's init.d scripts
6b6c31
rm -rf %{buildroot}/%{_initrddir}/
6b6c31
6b6c31
%post -n libibverbs -p /sbin/ldconfig
6b6c31
%postun -n libibverbs -p /sbin/ldconfig
6b6c31
6b6c31
%post -n libibumad -p /sbin/ldconfig
6b6c31
%postun -n libibumad -p /sbin/ldconfig
6b6c31
6b6c31
%post -n librdmacm -p /sbin/ldconfig
6b6c31
%postun -n librdmacm -p /sbin/ldconfig
6b6c31
6b6c31
%post -n ibacm
6b6c31
%systemd_post ibacm.service
6b6c31
%preun -n ibacm
6b6c31
%systemd_preun ibacm.service
6b6c31
%postun -n ibacm
6b6c31
%systemd_postun_with_restart ibacm.service
6b6c31
6b6c31
%post -n srp_daemon
6b6c31
%systemd_post srp_daemon.service
6b6c31
%preun -n srp_daemon
6b6c31
%systemd_preun srp_daemon.service
6b6c31
%postun -n srp_daemon
6b6c31
%systemd_postun_with_restart srp_daemon.service
6b6c31
6b6c31
%post -n iwpmd
6b6c31
%systemd_post iwpmd.service
6b6c31
%preun -n iwpmd
6b6c31
%systemd_preun iwpmd.service
6b6c31
%postun -n iwpmd
6b6c31
%systemd_postun_with_restart iwpmd.service
6b6c31
6b6c31
%files
6b6c31
%dir %{_sysconfdir}/rdma
6b6c31
%dir %{_docdir}/%{name}-%{version}
6b6c31
%doc %{_docdir}/%{name}-%{version}/README.md
6b6c31
%doc %{_docdir}/%{name}-%{version}/udev.md
6b6c31
%config(noreplace) %{_sysconfdir}/rdma/*
6b6c31
%config(noreplace) %{_sysconfdir}/udev/rules.d/*
6b6c31
%ifnarch s390
6b6c31
%config(noreplace) %{_sysconfdir}/modprobe.d/mlx4.conf
6b6c31
%endif
6b6c31
%config(noreplace) %{_sysconfdir}/modprobe.d/truescale.conf
6b6c31
%{_sysconfdir}/sysconfig/network-scripts/*
6b6c31
%{_unitdir}/rdma-hw.target
6b6c31
%{_unitdir}/rdma-load-modules@.service
6b6c31
%{_unitdir}/rdma.service
6b6c31
%dir %{dracutlibdir}/modules.d/05rdma
6b6c31
%{dracutlibdir}/modules.d/05rdma/module-setup.sh
6b6c31
%{_udevrulesdir}/*
6b6c31
%{sysmodprobedir}/libmlx4.conf
6b6c31
%{_libexecdir}/rdma-init-kernel
6b6c31
%{_libexecdir}/rdma-set-sriov-vf
6b6c31
%{_libexecdir}/mlx4-setup.sh
6b6c31
%{_libexecdir}/truescale-serdes.cmds
6b6c31
%{_sbindir}/rdma-ndd
6b6c31
%{_unitdir}/rdma-ndd.service
6b6c31
%{_mandir}/man8/rdma-ndd.*
6b6c31
%license COPYING.*
6b6c31
6b6c31
%files devel
6b6c31
%doc %{_docdir}/%{name}-%{version}/MAINTAINERS
6b6c31
%dir %{_includedir}/infiniband
6b6c31
%dir %{_includedir}/rdma
6b6c31
%{_includedir}/infiniband/*
6b6c31
%{_includedir}/rdma/*
6b6c31
%if %{with_static}
6b6c31
%{_libdir}/lib*.a
6b6c31
%endif
6b6c31
%{_libdir}/lib*.so
6b6c31
%{_libdir}/pkgconfig/*.pc
6b6c31
%{_mandir}/man3/ibv_*
6b6c31
%{_mandir}/man3/rdma*
6b6c31
%{_mandir}/man3/umad*
6b6c31
%{_mandir}/man3/*_to_ibv_rate.*
6b6c31
%ifnarch s390
6b6c31
%{_mandir}/man3/mlx4dv*
6b6c31
%{_mandir}/man3/mlx5dv*
6b6c31
%{_mandir}/man7/mlx5dv*
6b6c31
%endif
6b6c31
%{_mandir}/man7/rdma_cm.*
6b6c31
6b6c31
%files -n libibverbs
6b6c31
%dir %{_sysconfdir}/libibverbs.d
6b6c31
%dir %{_libdir}/libibverbs
6b6c31
%{_libdir}/libibverbs*.so.*
6b6c31
%{_libdir}/libibverbs/*.so
6b6c31
%ifnarch s390
6b6c31
%{_libdir}/libmlx4.so.*
6b6c31
%{_libdir}/libmlx5.so.*
6b6c31
%endif
6b6c31
%config(noreplace) %{_sysconfdir}/libibverbs.d/*.driver
6b6c31
%doc %{_docdir}/%{name}-%{version}/libibverbs.md
6b6c31
%doc %{_docdir}/%{name}-%{version}/rxe.md
6b6c31
%doc %{_docdir}/%{name}-%{version}/tag_matching.md
6b6c31
%{_bindir}/rxe_cfg
6b6c31
%{_mandir}/man7/rxe*
6b6c31
%ifnarch s390
6b6c31
%{_mandir}/man7/mlx4dv*
6b6c31
%{_mandir}/man7/mlx5dv*
6b6c31
%endif
6b6c31
%{_mandir}/man8/rxe*
6b6c31
6b6c31
%files -n libibverbs-utils
6b6c31
%{_bindir}/ibv_*
6b6c31
%{_mandir}/man1/ibv_*
6b6c31
6b6c31
%files -n ibacm
6b6c31
%config(noreplace) %{_sysconfdir}/rdma/ibacm_opts.cfg
6b6c31
%{_bindir}/ib_acme
6b6c31
%{_sbindir}/ibacm
6b6c31
%{_mandir}/man1/ibacm.*
6b6c31
%{_mandir}/man1/ib_acme.*
6b6c31
%{_mandir}/man7/ibacm.*
6b6c31
%{_mandir}/man7/ibacm_prov.*
6b6c31
%{_unitdir}/ibacm.service
6b6c31
%{_unitdir}/ibacm.socket
6b6c31
%dir %{_libdir}/ibacm
6b6c31
%{_libdir}/ibacm/*
6b6c31
%doc %{_docdir}/%{name}-%{version}/ibacm.md
6b6c31
6b6c31
%files -n iwpmd
6b6c31
%{_sbindir}/iwpmd
6b6c31
%{_unitdir}/iwpmd.service
6b6c31
%config(noreplace) %{_sysconfdir}/iwpmd.conf
6b6c31
%{_mandir}/man8/iwpmd.*
6b6c31
%{_mandir}/man5/iwpmd.*
6b6c31
6b6c31
%files -n libibumad
6b6c31
%{_libdir}/libibumad*.so.*
6b6c31
6b6c31
%files -n librdmacm
6b6c31
%{_libdir}/librdmacm*.so.*
6b6c31
%dir %{_libdir}/rsocket
6b6c31
%{_libdir}/rsocket/librspreload.so*
6b6c31
%doc %{_docdir}/%{name}-%{version}/librdmacm.md
6b6c31
%{_mandir}/man7/rsocket.*
6b6c31
6b6c31
%files -n librdmacm-utils
6b6c31
%{_bindir}/cmtime
6b6c31
%{_bindir}/mckey
6b6c31
%{_bindir}/rcopy
6b6c31
%{_bindir}/rdma_client
6b6c31
%{_bindir}/rdma_server
6b6c31
%{_bindir}/rdma_xclient
6b6c31
%{_bindir}/rdma_xserver
6b6c31
%{_bindir}/riostream
6b6c31
%{_bindir}/rping
6b6c31
%{_bindir}/rstream
6b6c31
%{_bindir}/ucmatose
6b6c31
%{_bindir}/udaddy
6b6c31
%{_bindir}/udpong
6b6c31
%{_mandir}/man1/cmtime.*
6b6c31
%{_mandir}/man1/mckey.*
6b6c31
%{_mandir}/man1/rcopy.*
6b6c31
%{_mandir}/man1/rdma_client.*
6b6c31
%{_mandir}/man1/rdma_server.*
6b6c31
%{_mandir}/man1/rdma_xclient.*
6b6c31
%{_mandir}/man1/rdma_xserver.*
6b6c31
%{_mandir}/man1/riostream.*
6b6c31
%{_mandir}/man1/rping.*
6b6c31
%{_mandir}/man1/rstream.*
6b6c31
%{_mandir}/man1/ucmatose.*
6b6c31
%{_mandir}/man1/udaddy.*
6b6c31
%{_mandir}/man1/udpong.*
6b6c31
6b6c31
%files -n srp_daemon
6b6c31
%config(noreplace) %{_sysconfdir}/srp_daemon.conf
6b6c31
%{_libexecdir}/srp_daemon/start_on_all_ports
6b6c31
%{_unitdir}/srp_daemon.service
6b6c31
%{_unitdir}/srp_daemon_port@.service
6b6c31
%{_sbindir}/ibsrpdm
6b6c31
%{_sbindir}/srp_daemon
6b6c31
%{_sbindir}/srp_daemon.sh
6b6c31
%{_sbindir}/run_srp_daemon
6b6c31
%{_mandir}/man1/ibsrpdm.1*
6b6c31
%{_mandir}/man1/srp_daemon.1*
6b6c31
%{_mandir}/man5/srp_daemon.service.5*
6b6c31
%{_mandir}/man5/srp_daemon_port@.service.5*
6b6c31
%doc %{_docdir}/%{name}-%{version}/ibsrpdm.md
6b6c31
6b6c31
%changelog
dd836b
* Mon Mar 30 2020 Honggang Li <honli@redhat.com> - 22.4-3
dd836b
- Restore three patches
dd836b
- Resolves: rhbz#1817412
dd836b
dd836b
* Wed Feb 19 2020 Honggang Li <honli@redhat.com> - 22.4-2
dd836b
- Fix ibacm segfault for dual port HCA support IB and Ethernet
dd836b
- Resolves: rhbz#1793585
dd836b
dd836b
* Thu Nov 21 2019 Jarod Wilson <jarod@redhat.com> 22.4-1
dd836b
- Update to v22.4 stable release
dd836b
- Support mlx5 scatter to CQE over DCT QP
dd836b
- Fix ibacm segfault on non-IB hardware
dd836b
- Resolves: rhbz#1715489
dd836b
- Resolves: rhbz#1712296
dd836b
dd836b
* Tue Aug 27 2019 Jarod Wilson <jarod@redhat.com> 22.3-1
dd836b
- Update to v22.3 stable release
dd836b
- Unclamp IPoIP MTUs
dd836b
- Resolves: rhbz#1647541
dd836b
6b6c31
* Thu May 30 2019 Jarod Wilson <jarod@redhat.com> 22.1-3
6b6c31
- Actually apply ConnectX-6 DX device ID patch
6b6c31
- Related: rhbz#1687426
6b6c31
6b6c31
* Thu May 02 2019 Jarod Wilson <jarod@redhat.com> 22.1-2
6b6c31
- Refresh stable-v22 branch fixes
6b6c31
- Add ConnectX-6 DX device IDs
6b6c31
- Resolves: rhbz#1687426
6b6c31
6b6c31
* Wed Mar 27 2019 Jarod Wilson <jarod@redhat.com> 22.1-1
6b6c31
- Update to upstream v22.1 release with stable-v22 branch fixes
6b6c31
- Add support for Broadcom 57500 RoCE adapter
6b6c31
- Resolves: rhbz#1678274
6b6c31
6b6c31
* Wed Jan 23 2019 Jarod Wilson <jarod@redhat.com> 22-1
6b6c31
- Rebase to upstream rdma-core v22
6b6c31
- Resolves: rhbz#1641921
6b6c31
- Add mlx5 IB Device Memory support (MEMIC)
6b6c31
- Resolves: rhbz#1644697
6b6c31
- Add mlx5 Tunnel protocol RX decap/encap offload
6b6c31
- Resolves: rhbz#1644709
6b6c31
- Add mlx5 Tunnel protocol TX decap/encap offload
6b6c31
- Resolves: rhbz#1644778
6b6c31
- Add support for mlx5 infiniband flow counters
6b6c31
- Resolves: rhbz#1644714
6b6c31
- Add mlx5 DEVX interface
6b6c31
- Resolves: rhbz#1644722
6b6c31
- Add libbnxt_re support for SRQ
6b6c31
- Resolves: rhbz#1570393
6b6c31
6b6c31
* Tue Jun 26 2018 Jarod Wilson <jarod@redhat.com> 17.2-3
6b6c31
- Restore RHEL7 systemd compat patches for srp_daemon
6b6c31
- Resolves: rhbz#1595019
6b6c31
6b6c31
* Wed Jun 20 2018 Jarod Wilson <jarod@redhat.com> 17.2-2
6b6c31
- Restore SysV Initscripts ib ifup and ifdown helpers
6b6c31
- Adjust MTU limit for IPoIB in datagram mode via ifup-ib
6b6c31
- Resolves: rhbz#1593426
6b6c31
- Resolves: rhbz#1593334
6b6c31
6b6c31
* Fri Jun 15 2018 Jarod Wilson <jarod@redhat.com> 17.2-1
6b6c31
- Rebase to upstream rdma-core v17.2 stable release
6b6c31
6b6c31
* Wed Jun 13 2018 Jarod Wilson <jarod@redhat.com> 17.1-3
6b6c31
- Grab latest stable-v17 fixes from upstream
6b6c31
- Fix Provides/Obsoletes on removed libibcm
6b6c31
- Fix Provides/Obsoletes on removed libehca
6b6c31
- Straighten out SW parsing feature support for DPDK
6b6c31
- Fix mlx5 rate-limiting support
6b6c31
- Resolves: rhbz#1588096
6b6c31
- Resovles: rhbz#1534856
6b6c31
- Resolves: rhbz#1589525
6b6c31
6b6c31
* Thu May 03 2018 Jarod Wilson <jarod@redhat.com> 17.1-2
6b6c31
- Match kernel ABI with kernel v4.17 for 32-on-64bit compatibility
6b6c31
- Resolves: rhbz#1573884
6b6c31
6b6c31
* Mon Apr 16 2018 Jarod Wilson <jarod@redhat.com> 17.1-1
6b6c31
- Rebase to upstream rdma-core v17.1 stable release
6b6c31
- No more libibcm or ib sysv initscripts
6b6c31
- Resolves: rhbz#1515647
6b6c31
- Resolves: rhbz#1517208
6b6c31
- Resolves: rhbz#1523201
6b6c31
- Resolves: rhbz#1541751
6b6c31
6b6c31
* Tue Feb 27 2018 Jarod Wilson <jarod@redhat.com> 15-7
6b6c31
- i40iw: revoke systemd udev rules auto-load on i40e hardware, due to
6b6c31
  causing problems with suspend and resume, and fall back to load via
6b6c31
  systemd rdma initscript.
6b6c31
- Resolves: rhbz#1561566
6b6c31
6b6c31
* Mon Feb 19 2018 Jarod Wilson <jarod@redhat.com> 15-6
6b6c31
- libbnxt_re: fix lat test failure in event mode
6b6c31
- Resolves: rhbz#1545248
6b6c31
6b6c31
* Tue Feb 06 2018 Jarod Wilson <jarod@redhat.com> 15-5
6b6c31
- libmlx4: report RSS caps for improved DPDK support
6b6c31
- Fix double mutex unlock in iwpmd
6b6c31
- Resolves: rhbz#1527350
6b6c31
- Resolves: rhbz#1542362
6b6c31
6b6c31
* Mon Jan 15 2018 Jarod Wilson <jarod@redhat.com> 15-4
6b6c31
- Add support for extended join multicast API in librdmacm
6b6c31
- Add support for striding RQ on mlx5
6b6c31
- Resolves: rhbz#1515487, rhbz#1516571
6b6c31
6b6c31
* Tue Dec 26 2017 Honggang Li <honli@redhat.com> 15-3
6b6c31
- srp_daemon: Don't create async_ev_thread if only run once
6b6c31
- srp_daemon: Remove unsupported systemd configurations
6b6c31
- srp_daemon: Start srp_daemon service after network target
6b6c31
- Resolves: bz1525193
6b6c31
- Resolves: bz1528671
6b6c31
6b6c31
* Mon Nov 13 2017 Jarod Wilson <jarod@redhat.com> 15-2
6b6c31
- Fix ibacm segfault and improper multicast handling
6b6c31
- Resolves: rhbz#1502745
6b6c31
- Resolves: rhbz#1502759
6b6c31
6b6c31
* Fri Sep 22 2017 Jarod Wilson <jarod@redhat.com> 15-1
6b6c31
- Update to upstream v15 release
6b6c31
- Resolves: rhbz#1494607
6b6c31
6b6c31
* Tue May 30 2017 Jarod Wilson <jarod@redhat.com> 13-7
6b6c31
- Add support for mlx5 Expand raw packet capabilities
6b6c31
- Resolves: rhbz#1456561
6b6c31
6b6c31
* Mon May 22 2017 Jarod Wilson <jarod@redhat.com> 13-6
6b6c31
- Clean up htonll/ntohll handling for opa-ff/infiniband-diags compile
6b6c31
- Add necessary Provides/Obsoletes for old -static packages
6b6c31
- Remove ibverbs providers that we aren't currently able to support
6b6c31
- Resolves: rhbz#1453096, rhbz#1451607
6b6c31
6b6c31
* Wed Apr 26 2017 Honggang Li <honli@redhat.com> 13-5
6b6c31
- rdma-ndd: Fix a busy loop for aarch64 platform
6b6c31
- Resolves: bz1442789
6b6c31
6b6c31
* Thu Apr 13 2017 Honggang Li <honli@redhat.com> 13-4
6b6c31
- srp_daemon: Don't rely on attribute offset in get_shared_pkeys
6b6c31
- Resolves: bz1432964
6b6c31
6b6c31
* Mon Apr 03 2017 Jarod Wilson <jarod@redhat.com> - 13-3
6b6c31
- Add necessary Provides/Obsoletes for rdma-ndd (rhbz 1437804)
6b6c31
6b6c31
* Mon Mar 27 2017 Jarod Wilson <jarod@redhat.com> - 13-2
6b6c31
- Build what we can on s390, don't exclude it entirely (rhbz 1434029)
6b6c31
6b6c31
* Tue Mar 21 2017 Jarod Wilson <jarod@redhat.com> - 13-1
6b6c31
- Update to rdma-core v13 release (rhbz 1404035)
6b6c31
- Mellanox mlx5 Direct Verbs support (rhbz 1426430)
6b6c31
- Get build working on s390x, less mlx5 (rhbz 1434029)
6b6c31
6b6c31
* Mon Mar 20 2017 Jarod Wilson <jarod@redhat.com> - 12-5
6b6c31
- Fix up multi-lib conflicts in ibacm files (rhbz 1429362)
6b6c31
6b6c31
* Mon Mar 13 2017 Jarod Wilson <jarod@redhat.com> - 12-4
6b6c31
- Clean up devel files list
6b6c31
- Fix up a few dependencies rpmdiff complained about (rhbz 1404035)
6b6c31
- Add Requires: pciutils for dracut to behave in minimalist cases (rhbz 1429046)
6b6c31
- Adjust Conflicts: on infiniband-diags to match RHEL packaging (rhbz 1428785)
6b6c31
6b6c31
* Mon Mar 06 2017 Jarod Wilson <jarod@redhat.com> - 12-3
6b6c31
- Take libi40iw out of tech-preview state (rhbz 1428930)
6b6c31
- Add ibv_*_pingpong man pages (rhbz 1416541)
6b6c31
6b6c31
* Thu Feb 09 2017 Jarod Wilson <jarod@redhat.com> - 12-2
6b6c31
- Make sure ocrdma module is classified as tech-preview (rhbz 1418224)
6b6c31
6b6c31
* Fri Jan 27 2017 Jarod Wilson <jarod@redhat.com> - 12-1
6b6c31
- Update to upstream final v12 release
6b6c31
6b6c31
* Wed Jan 25 2017 Jarod Wilson <jarod@redhat.com> - 12-0.1.rc3.1
6b6c31
- Initial import to Fedora package database via post-v12-rc3 git snapshot