commit
e55683088a
@ -0,0 +1 @@
|
|||||||
|
SOURCES/libvma-9.8.20.tar.gz
|
@ -0,0 +1 @@
|
|||||||
|
fab25759447602ec4602b1c2c949b8f153d34e1d SOURCES/libvma-9.8.20.tar.gz
|
@ -0,0 +1,35 @@
|
|||||||
|
From 92f3868fd0474956afe6cb43f8de4d16abba83d6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Iftah Levi <iftahl@nvidia.com>
|
||||||
|
Date: Sun, 9 Jul 2023 14:08:44 +0300
|
||||||
|
Subject: [PATCH] issue: 3525812 Fix buffer leak socketextreme
|
||||||
|
|
||||||
|
In reclaim buffer api - vma_socketxtreme_free_vma_packets
|
||||||
|
we use reclaim_recv_buffers method which uses try_lock
|
||||||
|
on the ring, but in case the lock has failed - buffers
|
||||||
|
will not be returned.
|
||||||
|
The fix - in case the ring is locked - reclaim buffers
|
||||||
|
to the global pool.
|
||||||
|
|
||||||
|
Signed-off-by: Iftah Levi <iftahl@nvidia.com>
|
||||||
|
---
|
||||||
|
src/vma/sock/sock-redirect.cpp | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/vma/sock/sock-redirect.cpp b/src/vma/sock/sock-redirect.cpp
|
||||||
|
index 4308d21e8478..9b232e6093ca 100644
|
||||||
|
--- a/src/vma/sock/sock-redirect.cpp
|
||||||
|
+++ b/src/vma/sock/sock-redirect.cpp
|
||||||
|
@@ -466,7 +466,9 @@ int vma_socketxtreme_free_vma_packets(struct vma_packet_desc_t *packets, int num
|
||||||
|
p_socket_object->free_buffs(packets[i].total_len);
|
||||||
|
}
|
||||||
|
if (rng) {
|
||||||
|
- rng->reclaim_recv_buffers(desc);
|
||||||
|
+ if (!rng->reclaim_recv_buffers(desc)) {
|
||||||
|
+ g_buffer_pool_rx->put_buffers_thread_safe(desc);
|
||||||
|
+ }
|
||||||
|
} else {
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
@ -0,0 +1,164 @@
|
|||||||
|
%{!?configure_options: %global configure_options %{nil}}
|
||||||
|
|
||||||
|
Name: libvma
|
||||||
|
Version: 9.8.20
|
||||||
|
Release: 3%{?dist}
|
||||||
|
Summary: A library for boosting TCP and UDP traffic (over RDMA hardware)
|
||||||
|
|
||||||
|
License: GPLv2 or BSD
|
||||||
|
Url: https://github.com/Mellanox/libvma
|
||||||
|
Source0: https://github.com/Mellanox/libvma/archive/%{version}/%{name}-%{version}.tar.gz
|
||||||
|
Patch0: 0001-issue-3525812-Fix-buffer-leak-socketextreme.patch
|
||||||
|
|
||||||
|
# libvma currently supports only the following architectures
|
||||||
|
ExclusiveArch: x86_64 ppc64le ppc64 aarch64
|
||||||
|
|
||||||
|
BuildRequires: pkgconfig
|
||||||
|
BuildRequires: automake
|
||||||
|
BuildRequires: autoconf
|
||||||
|
BuildRequires: libtool
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: rdma-core-devel
|
||||||
|
BuildRequires: systemd-rpm-macros
|
||||||
|
BuildRequires: pkgconfig(libnl-3.0)
|
||||||
|
BuildRequires: pkgconfig(libnl-route-3.0)
|
||||||
|
BuildRequires: make
|
||||||
|
|
||||||
|
%description
|
||||||
|
libvma is a LD_PRELOAD-able library that boosts performance of TCP and
|
||||||
|
UDP traffic. It allows application written over standard socket API to
|
||||||
|
handle fast path data traffic from user space over Ethernet and/or
|
||||||
|
Infiniband with full network stack bypass and get better throughput,
|
||||||
|
latency and packets/sec rate.
|
||||||
|
|
||||||
|
No application binary change is required for that.
|
||||||
|
libvma is supported by RDMA capable devices that support "verbs"
|
||||||
|
IBV_QPT_RAW_PACKET QP for Ethernet and/or IBV_QPT_UD QP for IPoIB.
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Header files required to develop with libvma
|
||||||
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
This package includes headers for building programs with libvma's
|
||||||
|
interfaces.
|
||||||
|
|
||||||
|
%package utils
|
||||||
|
Summary: Utilities used with libvma
|
||||||
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description utils
|
||||||
|
This package contains the tool for collecting and analyzing libvma statistic.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q
|
||||||
|
%autosetup -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
export revision=1
|
||||||
|
if [ ! -e configure ] && [ -e autogen.sh ]; then
|
||||||
|
PRJ_RELEASE=1 ./autogen.sh
|
||||||
|
fi
|
||||||
|
|
||||||
|
%configure %{?configure_options}
|
||||||
|
%{make_build}
|
||||||
|
|
||||||
|
%install
|
||||||
|
%{make_install}
|
||||||
|
|
||||||
|
find $RPM_BUILD_ROOT%{_libdir} -name '*.la' -delete
|
||||||
|
install -D -m 644 contrib/scripts/vma.service $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/vma.service
|
||||||
|
rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/init.d/vma
|
||||||
|
|
||||||
|
%post
|
||||||
|
%systemd_post vma.service
|
||||||
|
|
||||||
|
%preun
|
||||||
|
%systemd_preun vma.service
|
||||||
|
|
||||||
|
%postun
|
||||||
|
%systemd_postun_with_restart vma.service
|
||||||
|
|
||||||
|
%files
|
||||||
|
%{_libdir}/%{name}.so*
|
||||||
|
%dir %{_pkgdocdir}
|
||||||
|
%doc %{_pkgdocdir}/README
|
||||||
|
%doc %{_pkgdocdir}/CHANGES
|
||||||
|
%config(noreplace) %{_sysconfdir}/libvma.conf
|
||||||
|
%{_sbindir}/vmad
|
||||||
|
%{_prefix}/lib/systemd/system/vma.service
|
||||||
|
%license LICENSE
|
||||||
|
%{_mandir}/man7/vma.*
|
||||||
|
%{_mandir}/man8/vmad.*
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%dir %{_includedir}/mellanox
|
||||||
|
%{_includedir}/mellanox/vma_extra.h
|
||||||
|
|
||||||
|
%files utils
|
||||||
|
%{_bindir}/vma_stats
|
||||||
|
%{_mandir}/man8/vma_stats.*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Mon Jul 31 2023 Kamal Heib <kheib@redhat.com> - 9.8.20-3
|
||||||
|
- Rebuilt for libvma-utils
|
||||||
|
- Resolves: rhbz#2227843
|
||||||
|
|
||||||
|
* Tue Jul 18 2023 Kamal Heib <kheib@redhat.com> - 9.8.20-2
|
||||||
|
- Fix Socketxtreme buffer reclaim leak
|
||||||
|
- Resolves: rhbz#2223701
|
||||||
|
|
||||||
|
* Thu Jun 01 2023 Kamal Heib <kheib@redhat.com> - 9.8.20-1
|
||||||
|
- Update to upstream release 9.8.20.
|
||||||
|
- Resolves: rhbz#2170370
|
||||||
|
|
||||||
|
* Wed Aug 03 2022 Michal Schmidt <mschmidt@redhat.com> - 9.6.4-1
|
||||||
|
- Update to upstream release 9.6.4.
|
||||||
|
- Resolves: rhbz#2049573
|
||||||
|
|
||||||
|
* Sat Nov 27 2021 Honggang Li <honli@redhat.com> - 9.4.0-1
|
||||||
|
- Bump version to 9.4.0
|
||||||
|
- Resolves: rhbz#2024548
|
||||||
|
|
||||||
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 9.3.1-2
|
||||||
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
|
Related: rhbz#1991688
|
||||||
|
|
||||||
|
* Tue Jul 06 2021 Honggang Li <honli@redhat.com> - 9.3.1-1
|
||||||
|
- Bump version to 9.3.1
|
||||||
|
- Resolves: rhbz#1858572
|
||||||
|
|
||||||
|
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 9.2.2-3
|
||||||
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||||
|
|
||||||
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 9.2.2-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Dec 16 2020 Igor Ivanov <igor.ivanov.va@gmail.com> 9.2.2-1
|
||||||
|
- Bump version to 9.2.2
|
||||||
|
- Fix issues for gcc-11
|
||||||
|
|
||||||
|
* Thu Dec 10 2020 Jeff Law <law@redhat.com> 9.1.1-2
|
||||||
|
- Don't use "register" in C++17. Still FTBFS though.
|
||||||
|
|
||||||
|
* Sun Nov 15 2020 Igor Ivanov <igor.ivanov.va@gmail.com> 9.1.1-1
|
||||||
|
- Bump version to 9.1.1
|
||||||
|
|
||||||
|
* Fri Apr 17 2020 Igor Ivanov <igor.ivanov.va@gmail.com> 9.0.2-1
|
||||||
|
- Align with Fedora guidelines
|
||||||
|
- Bump version to 9.0.2
|
||||||
|
|
||||||
|
* Thu Feb 7 2019 Igor Ivanov <igor.ivanov.va@gmail.com> 8.8.2-1
|
||||||
|
- Improve package update processing
|
||||||
|
|
||||||
|
* Tue Dec 19 2017 Igor Ivanov <igor.ivanov.va@gmail.com> 8.5.1-1
|
||||||
|
- Add systemd support
|
||||||
|
|
||||||
|
* Tue May 9 2017 Ophir Munk <ophirmu@mellanox.com> 8.3.4-1
|
||||||
|
- Add libvma-debug.so installation
|
||||||
|
|
||||||
|
* Mon Nov 28 2016 Igor Ivanov <igor.ivanov.va@gmail.com> 8.2.2-1
|
||||||
|
- Add daemon
|
||||||
|
|
||||||
|
* Mon Jan 4 2016 Avner BenHanoch <avnerb@mellanox.com> 7.0.12-1
|
||||||
|
- Initial Packaging
|
Loading…
Reference in new issue