diff --git a/issue-2485156-Fix-fc35-issues.patch b/issue-2485156-Fix-fc35-issues.patch new file mode 100644 index 0000000..e39fec8 --- /dev/null +++ b/issue-2485156-Fix-fc35-issues.patch @@ -0,0 +1,25 @@ +commit e4660f93007e41c7dbfdb5e3e166c3a9e84a5ae6 +Author: Igor Ivanov +Date: Thu Jun 17 16:07:31 2021 +0300 + + issue: 2485156 Fix fc35 issues + + - glibc: + The function pthread_yield has been deprecated; programs should use + the equivalent standard function sched_yield instead. + + Signed-off-by: Igor Ivanov + +diff --git src/vma/iomux/epfd_info.cpp src/vma/iomux/epfd_info.cpp +index c7670c7b36b4..d7c6c4fcdf9e 100644 +--- src/vma/iomux/epfd_info.cpp ++++ src/vma/iomux/epfd_info.cpp +@@ -624,7 +624,7 @@ int epfd_info::ring_poll_and_process_element(uint64_t *p_poll_sn, void* pv_fd_re + + m_ring_map_lock.unlock(); + +- if (m_sysvar_thread_mode == THREAD_MODE_PLENTY && ret_total == 0 && errno == EAGAIN) pthread_yield(); ++ if (m_sysvar_thread_mode == THREAD_MODE_PLENTY && ret_total == 0 && errno == EAGAIN) sched_yield(); + + if (ret_total) { + __log_func("ret_total=%d", ret_total); diff --git a/libvma.changes b/libvma.changes index b5aa951..656abec 100644 --- a/libvma.changes +++ b/libvma.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sun Sep 26 11:11:24 UTC 2021 - Nicolas Morey-Chaisemartin + +- Add issue-2485156-Fix-fc35-issues.patch from upstream to fix + compilation with newer glibc (deprecated pthread_yield) + ------------------------------------------------------------------- Mon Jun 28 12:54:15 UTC 2021 - Nicolas Morey-Chaisemartin diff --git a/libvma.spec b/libvma.spec index 32255a3..9ecf84f 100644 --- a/libvma.spec +++ b/libvma.spec @@ -28,6 +28,7 @@ Version: 9.3.1 Release: 0 Source0: %{name}-%{version}%{git_ver}.tar.gz Source1: vma.service +Patch1: issue-2485156-Fix-fc35-issues.patch URL: https://github.com/Mellanox/libvma BuildRequires: autoconf BuildRequires: automake @@ -70,6 +71,7 @@ Headers and symbolink link required to compile and link with the Libvma library. %prep %setup -q -n %{name}-%{version}%{git_ver} +%patch1 %build ./autogen.sh