Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libfabric for openSUSE:Factory checked in at 2024-11-30 13:27:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libfabric (Old) and /work/SRC/openSUSE:Factory/.libfabric.new.28523 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libfabric" Sat Nov 30 13:27:31 2024 rev:49 rq:1227352 version:1.22.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libfabric/libfabric.changes 2024-08-10 19:06:31.466603867 +0200 +++ /work/SRC/openSUSE:Factory/.libfabric.new.28523/libfabric.changes 2024-11-30 13:27:48.293603091 +0100 @@ -1,0 +2,7 @@ +Thu Nov 28 15:47:54 UTC 2024 - Nicolas Morey <[email protected]> + +- Add psm3-fix-SIGILL-on-system-not-supporting-AVX.patch to fix + SIGILL hapening during init on older CPU (bsc#1213538, bsc#1233356). +- Refresh libfabric-libtool.patch tu support patch -p0 + +------------------------------------------------------------------- New: ---- psm3-fix-SIGILL-on-system-not-supporting-AVX.patch BETA DEBUG BEGIN: New: - Add psm3-fix-SIGILL-on-system-not-supporting-AVX.patch to fix SIGILL hapening during init on older CPU (bsc#1213538, bsc#1233356). BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fabtests.spec ++++++ --- /var/tmp/diff_new_pack.zHQdGP/_old 2024-11-30 13:27:48.817624917 +0100 +++ /var/tmp/diff_new_pack.zHQdGP/_new 2024-11-30 13:27:48.817624917 +0100 @@ -38,7 +38,7 @@ Fabtests provides a set of examples that uses libfabric, a fabric software library. %prep -%autosetup -p1 -n libfabric-%{version}%{git_ver} +%autosetup -p0 -n libfabric-%{version}%{git_ver} %build cd fabtests ++++++ libfabric.spec ++++++ --- /var/tmp/diff_new_pack.zHQdGP/_old 2024-11-30 13:27:48.845626083 +0100 +++ /var/tmp/diff_new_pack.zHQdGP/_new 2024-11-30 13:27:48.849626250 +0100 @@ -35,6 +35,7 @@ Source: %{name}-%{version}%{git_ver}.tar.bz2 Source1: baselibs.conf Patch0: libfabric-libtool.patch +Patch1: psm3-fix-SIGILL-on-system-not-supporting-AVX.patch URL: http://www.github.com/ofiwg/libfabric BuildRequires: autoconf BuildRequires: automake @@ -79,7 +80,7 @@ services, such as RDMA. This package contains the development files. %prep -%autosetup -p1 -n %{name}-%{version}%{git_ver} +%autosetup -p0 -n %{name}-%{version}%{git_ver} %build export CFLAGS=-Wno-incompatible-pointer-types ++++++ libfabric-libtool.patch ++++++ --- /var/tmp/diff_new_pack.zHQdGP/_old 2024-11-30 13:27:48.921629248 +0100 +++ /var/tmp/diff_new_pack.zHQdGP/_new 2024-11-30 13:27:48.925629415 +0100 @@ -1,8 +1,18 @@ -diff --git a/configure.ac b/configure.ac -index d137250..4e67035 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -89,7 +89,7 @@ AC_HEADER_STDC +commit 81de541fdd4abc77167f955f8ddd85f195888e5c +Author: Nicolas Morey-Chaisemartin <[email protected]> +Date: Fri Sep 30 13:49:16 2022 +0200 + + libfabric libtool + + Disable static libs + + Signed-off-by: Nicolas Morey-Chaisemartin <[email protected]> + +diff --git configure.ac configure.ac +index 7dacf69c9a69..90fcdc610754 100644 +--- configure.ac ++++ configure.ac +@@ -193,7 +193,7 @@ m4_version_prereq([2.70], dnl Check for compiler features AC_C_TYPEOF ++++++ psm3-fix-SIGILL-on-system-not-supporting-AVX.patch ++++++ commit fd049a0a053502a85b839a715fc6f9fdbfc4439a Author: Nicolas Morey <[email protected]> Date: Thu Nov 28 16:44:12 2024 +0100 psm3: fix SIGILL on system not supporting AVX Even though code was added to not use the PSM3 provider on system without AVX/AVX2 support, logs triggered by the detection code can be using AVX instructions causing psmx3_getinfo to SIGILL Move the detection even earlier in the provider init and use OFI standard print functions to avoid using any code that might have been compiled with AVX instructions. Fixes: 3ef633408edf ("prov/psm3: update provider to sync with IEFS 11.5.1.0.3") Signed-off-by: Nicolas Morey <[email protected]> diff --git prov/psm3/src/psmx3_init.c prov/psm3/src/psmx3_init.c index 29359d3ea348..cc259a1b6301 100644 --- prov/psm3/src/psmx3_init.c +++ prov/psm3/src/psmx3_init.c @@ -680,18 +680,6 @@ static int psmx3_getinfo(uint32_t api_version, const char *node, PSMX3_INFO(&psmx3_prov, FI_LOG_CORE,"\n"); - __builtin_cpu_init(); - if (!__builtin_cpu_supports(PSM3_MARCH)) { - PSMX3_INFO(&psmx3_prov, FI_LOG_CORE, - "CPU does not support '%s'.\n", PSM3_MARCH); - OFI_INFO_STR(&psmx3_prov, - (__builtin_cpu_supports("avx2") ? "AVX2" : - (__builtin_cpu_supports("avx") ? "AVX" : - (__builtin_cpu_supports("sse4.2") ? "SSE4.2" : "unknown"))), - PSM3_MARCH, "CPU Supports", "PSM3 Built With"); - goto err_out; - } - if (psmx3_init_prov_info(hints, &prov_info)) goto err_out; @@ -895,6 +883,19 @@ struct fi_provider psmx3_prov = { PROVIDER_INI { + __builtin_cpu_init(); + if (!__builtin_cpu_supports(PSM3_MARCH)) { + FI_INFO(&core_prov, FI_LOG_CORE, + "PSM3: CPU does not support '%s'.\n", PSM3_MARCH); + OFI_INFO_STR(&core_prov, + (__builtin_cpu_supports("avx2") ? "AVX2" : + (__builtin_cpu_supports("avx") ? "AVX" : + (__builtin_cpu_supports("sse4.2") ? "SSE4.2" : "unknown"))), + PSM3_MARCH, "CPU Supports", "PSM3 Built With"); + return NULL; + } + + psmx3_prov.version = get_psm3_provider_version(); PSMX3_INFO(&psmx3_prov, FI_LOG_CORE, "build options: VERSION=%u.%u=%u.%u.%u.%u, "
