diff --git a/SOURCES/0001-utils-skip-team-interface-when-check-bonding.patch b/SOURCES/0001-utils-skip-team-interface-when-check-bonding.patch new file mode 100644 index 0000000..1950388 --- /dev/null +++ b/SOURCES/0001-utils-skip-team-interface-when-check-bonding.patch @@ -0,0 +1,42 @@ +From 460c87546e31511b098a2af3392c67ba7d33c675 Mon Sep 17 00:00:00 2001 +From: Honggang Li +Date: Tue, 19 Jan 2021 18:07:00 +0800 +Subject: [PATCH] utils: skip team interface when check bonding + +Both team and bonding Master interface has IFF_MASTER flag bit set. + +However, linux sys files, such as BONDING_MODE_PARAM_FILE, are used +to check bonding interface. The linux 'team' kernel module does not +create those files as 'bonding' module. + +In other words, 'bonding' interface verify does not work for 'team' +interface, so skip 'team' interface when check 'bonding'. + +Otherwise, we will have significant performance issues for UDP traffic +over 'team' interface. + +Fixes: ee0a1b983a6f ("issue: 2233904 Check bonding device using netlink") + +Signed-off-by: Honggang Li +--- + src/vma/util/utils.cpp | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/src/vma/util/utils.cpp b/src/vma/util/utils.cpp +index 5c0fe3e960a3..d795d259e370 100644 +--- a/src/vma/util/utils.cpp ++++ b/src/vma/util/utils.cpp +@@ -822,9 +822,7 @@ bool check_bond_device_exist(const char* ifname) + goto out; + } + link_type = rtnl_link_get_type(link); +- if (link_type && +- (strcmp(link_type, "bond") != 0) && +- (strcmp(link_type, "team") != 0)) { ++ if (link_type && (strcmp(link_type, "bond") != 0)) { + link_type = NULL; + } + out: +-- +2.25.4 + diff --git a/SPECS/libvma.spec b/SPECS/libvma.spec index 1afe672..765d03f 100644 --- a/SPECS/libvma.spec +++ b/SPECS/libvma.spec @@ -2,7 +2,7 @@ Name: libvma Version: 9.2.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A library for boosting TCP and UDP traffic (over RDMA hardware) License: GPLv2 or BSD @@ -12,6 +12,7 @@ Patch0: 0002-Update-systemctl-files.patch Patch1: 0003-Remove-30-libvma-limits.patch Patch2: 0004-Use-vmad-for-systemd.patch Patch3: 0005-Fix-issues-for-gcc-11.patch +Patch4: 0001-utils-skip-team-interface-when-check-bonding.patch # libvma currently supports only the following architectures ExclusiveArch: x86_64 ppc64le ppc64 aarch64 @@ -102,6 +103,10 @@ install -D -m 644 contrib/scripts/vma.service $RPM_BUILD_ROOT/%{_prefix}/lib/sys %{_mandir}/man8/vma_stats.* %changelog +* Thu Feb 04 2021 Honggang Li - 9.2.2-2 +- Skip team interface when check bonding +- Resolves: rhbz#1916670 + * Wed Dec 16 2020 Honggang Li - 9.2.2-1 - Update to upstream v9.2.2 release - Resolves: rhbz#1851727