diff --git a/0000-extend-fdesc-array.patch b/0000-extend-fdesc-array.patch index 1ecc90b6b1b5dac075d344c74ea67942fa2714c6..2815166039c7dadc88618b001dbb2042af76df08 100644 --- a/0000-extend-fdesc-array.patch +++ b/0000-extend-fdesc-array.patch @@ -4,7 +4,7 @@ union psmi_envvar_val env_fi; char fvals_str[128]; char fname[128]; -- char fdesc[256]; +- char fdesc[300]; + char fdesc[512]; snprintf(fvals_str, sizeof(fvals_str) - 1, "%d:%d:1", num, diff --git a/Add-D_FORTIFY_SOURCE-compile-option.patch b/Add-D_FORTIFY_SOURCE-compile-option.patch index b0806d74054dd72d5070e9a0a646f08d4fa71d13..8ee3068fa22f97b93dccfb75110628ac47708869 100644 --- a/Add-D_FORTIFY_SOURCE-compile-option.patch +++ b/Add-D_FORTIFY_SOURCE-compile-option.patch @@ -1,7 +1,8 @@ -diff -Nur a/buildflags.mak b/buildflags.mak ---- a/buildflags.mak 2018-05-08 03:44:29.000000000 +0800 -+++ b/buildflags.mak 2023-09-04 19:15:30.274937794 +0800 -@@ -141,7 +141,7 @@ +diff --git a/buildflags.mak b/buildflags.mak +index 0ce15aa..6ba3cf7 100644 +--- a/buildflags.mak ++++ b/buildflags.mak +@@ -149,7 +149,7 @@ endif # # feature test macros for drand48_r # @@ -9,4 +10,4 @@ diff -Nur a/buildflags.mak b/buildflags.mak +BASECFLAGS += -D_DEFAULT_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_FORTIFY_SOURCE=2 ifneq (,${HFI_BRAKE_DEBUG}) - BASECFLAGS += -DHFI_BRAKE_DEBUG + BASECFLAGS += -DHFI_BRAKE_DEBUG diff --git a/Fix-missing-extern.patch b/Fix-missing-extern.patch deleted file mode 100644 index 83af9875f2fd3cdc1cf36b124e2bd93062e2b64b..0000000000000000000000000000000000000000 --- a/Fix-missing-extern.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/psm_utils.c b/psm_utils.c -index 87e522b..6b7c0d1 100644 ---- a/psm_utils.c -+++ b/psm_utils.c -@@ -57,6 +57,8 @@ - #include "psm_mq_internal.h" - #include "psm_am_internal.h" - -+uint32_t psmi_cpu_model; -+ - int psmi_ep_device_is_enabled(const psm2_ep_t ep, int devid); - - struct psmi_epid_table psmi_epid_table; diff --git a/Fix-opa-psm2-gcc10.patch b/Fix-opa-psm2-gcc10.patch deleted file mode 100644 index ea38aca9ffe3b80ded001d3e514d655ae206f1d0..0000000000000000000000000000000000000000 --- a/Fix-opa-psm2-gcc10.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff --git a/psm_error.h b/psm_error.h -index f335382..cb1b4ba 100644 ---- a/psm_error.h -+++ b/psm_error.h -@@ -65,7 +65,7 @@ - #define PSMI_EP_NORETURN ((psm2_ep_t) -2) - #define PSMI_EP_LOGEVENT ((psm2_ep_t) -3) - --psm2_ep_errhandler_t psmi_errhandler_global; -+extern psm2_ep_errhandler_t psmi_errhandler_global; - - psm2_error_t MOCKABLE(psmi_handle_error)(psm2_ep_t ep, psm2_error_t error, - const char *buf, ...) -diff --git a/psm_utils.h b/psm_utils.h -index 3358704..5c02a2f 100644 ---- a/psm_utils.h -+++ b/psm_utils.h -@@ -325,7 +325,7 @@ uint32_t psmi_get_hfi_type(const psmi_context_t *context); - /* - * Global model so we can tune defaults better for specific cpu's - */ --uint32_t psmi_cpu_model; -+extern uint32_t psmi_cpu_model; - - /* - * Diagnostics, all in psm_diags.c -@@ -342,7 +342,7 @@ void psmi_multi_ep_init(); - * Fault injection - */ - struct psmi_faultinj_spec; --int psmi_faultinj_enabled; /* use macro to test */ -+extern int psmi_faultinj_enabled; /* use macro to test */ - #if 1 /* possible to disable at compile time */ - #define PSMI_FAULTINJ_ENABLED() (!!psmi_faultinj_enabled) - #else -diff --git a/ptl_am/ptl_fwd.h b/ptl_am/ptl_fwd.h -index e1bd064..1d0fec4 100644 ---- a/ptl_am/ptl_fwd.h -+++ b/ptl_am/ptl_fwd.h -@@ -57,7 +57,7 @@ - #define _PTL_FWD_AMSH_H - - /* Symbol in am ptl */ --struct ptl_ctl_init psmi_ptl_amsh; -+extern struct ptl_ctl_init psmi_ptl_amsh; - - extern int psmi_shm_mq_rv_thresh; - -diff --git a/ptl_ips/ptl_fwd.h b/ptl_ips/ptl_fwd.h -index 3702fba..b774260 100644 ---- a/ptl_ips/ptl_fwd.h -+++ b/ptl_ips/ptl_fwd.h -@@ -61,7 +61,7 @@ typedef struct ips_epaddr ips_epaddr_t; - typedef struct ips_msgctl ips_msgctl_t; - - /* Symbol in ips ptl */ --struct ptl_ctl_init psmi_ptl_ips; -+extern struct ptl_ctl_init psmi_ptl_ips; - --struct ptl_ctl_rcvthread psmi_ptl_ips_rcvthread; -+extern struct ptl_ctl_rcvthread psmi_ptl_ips_rcvthread; - #endif /* _PTL_FWD_IPS_H */ -diff --git a/ptl_self/ptl_fwd.h b/ptl_self/ptl_fwd.h -index 77ee7f9..7ee6b73 100644 ---- a/ptl_self/ptl_fwd.h -+++ b/ptl_self/ptl_fwd.h -@@ -57,6 +57,6 @@ - #define _PTL_FWD_SELF_H - - /* Symbol in am ptl */ --struct ptl_ctl_init psmi_ptl_self; -+extern struct ptl_ctl_init psmi_ptl_self; - - #endif diff --git a/Fix-opa-psm2-gcc12-ips_cmpxchg-remove-compile-breaking-bad.patch b/Fix-opa-psm2-gcc12-ips_cmpxchg-remove-compile-breaking-bad.patch deleted file mode 100644 index 8d2313f712b6e44770fd484d4534e565942bdd22..0000000000000000000000000000000000000000 --- a/Fix-opa-psm2-gcc12-ips_cmpxchg-remove-compile-breaking-bad.patch +++ /dev/null @@ -1,32 +0,0 @@ -From c3a7d9468d5623c0164b783346bada8664a9a2c9 Mon Sep 17 00:00:00 2001 -From: Brendan Cunningham <14318587+BrendanCunningham@users.noreply.github.com> -Date: Sat, 20 Nov 2021 13:02:06 -0500 -Subject: [PATCH] ips_cmpxchg: remove compile-breaking bad cast-to-struct. - -uint32_t ptr argument in compare-and-swap code snippet should not be -cast to pointer-to-uint32_t[100] struct. - -Signed-off-by: Brendan Cunningham ---- - include/linux-i386/sysdep.h | 5 +---- - rpm_release_extension | 2 +- - 2 files changed, 2 insertions(+), 5 deletions(-) - -diff --git a/include/linux-i386/sysdep.h b/include/linux-i386/sysdep.h -index bfd5746..2c48c1e 100644 ---- a/include/linux-i386/sysdep.h -+++ b/include/linux-i386/sysdep.h -@@ -139,12 +139,9 @@ static __inline__ uint32_t ips_cmpxchg(volatile uint32_t *ptr, - uint32_t old_val, uint32_t new_val) - { - uint32_t prev; -- struct xchg_dummy { -- uint32_t a[100]; -- }; - - asm volatile (LOCK_PREFIX "cmpxchgl %1,%2" : "=a"(prev) -- : "q"(new_val), "m"(*(struct xchg_dummy *)ptr), "0"(old_val) -+ : "q"(new_val), "m"(*ptr), "0"(old_val) - : "memory"); - - return prev; diff --git a/PSM2_10.3.58.tar.gz b/PSM2_10.3.58.tar.gz deleted file mode 100644 index d3ffcf0429d714e68f0cdb6b9c162d5275619743..0000000000000000000000000000000000000000 Binary files a/PSM2_10.3.58.tar.gz and /dev/null differ diff --git a/PSM2_12.0.1.tar.gz b/PSM2_12.0.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..5ffd3cef08a133ca62821747b48e511a374a61b8 Binary files /dev/null and b/PSM2_12.0.1.tar.gz differ diff --git a/fix-stringop-truncation-build-error.patch b/fix-stringop-truncation-build-error.patch deleted file mode 100644 index 15ee17d982ea64f9923120cdbad6fba2617abce4..0000000000000000000000000000000000000000 --- a/fix-stringop-truncation-build-error.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur opa-psm2-PSM2_10.3.58/psm_ep.c opa-psm2-PSM2_10.3.58_new/psm_ep.c ---- opa-psm2-PSM2_10.3.58/psm_ep.c 2018-05-08 03:44:29.000000000 +0800 -+++ opa-psm2-PSM2_10.3.58_new/psm_ep.c 2020-07-01 17:09:40.229405374 +0800 -@@ -1495,8 +1495,7 @@ - - b_new = (char *)devstr; - e = b_new + len; -- strncpy(e, devstring, len - 1); -- e[len - 1] = '\0'; -+ strncpy(e, devstring, len); - ee = e + len; - i = 0; - while (e < ee && *e && i < PTL_MAX_INIT) { diff --git a/libpsm2.spec b/libpsm2.spec index d91332448ca49cdcd70506a11d962fd5154ea7e5..130d6260a9f33e58d0fe7cb315e1abe5f77aadaf 100644 --- a/libpsm2.spec +++ b/libpsm2.spec @@ -1,18 +1,14 @@ Name: libpsm2 -Version: 10.3.58 -Release: 11 +Version: 12.0.1 +Release: 1 Summary: Intel PSM Libraries License: BSD or GPLv2 URL: https://github.com/01org/opa-psm2/ -Source0: https://github.com/intel/opa-psm2/archive/PSM2_10.3.58.tar.gz +Source0: https://github.com/intel/opa-psm2/archive/PSM2_%{version}.tar.gz #extend fdesc array Patch0: 0000-extend-fdesc-array.patch -Patch1: fix-stringop-truncation-build-error.patch -Patch2: Fix-opa-psm2-gcc10.patch -Patch3: Fix-missing-extern.patch -Patch4: Fix-opa-psm2-gcc12-ips_cmpxchg-remove-compile-breaking-bad.patch -Patch5: Add-D_FORTIFY_SOURCE-compile-option.patch +Patch1: Add-D_FORTIFY_SOURCE-compile-option.patch ExclusiveArch: x86_64 BuildRequires: libuuid-devel numactl-devel gcc systemd-udev @@ -42,9 +38,10 @@ Development package for the Intel PSM library Support for MPIs linked with PSM versions less than 2 %prep -%autosetup -n opa-psm2-PSM2_10.3.58 -p1 +%autosetup -n opa-psm2-PSM2_%{version} -p1 %build +%{set_build_flags} %make_build %install @@ -59,7 +56,7 @@ rm -f %{buildroot}%{_libdir}/*.a %files %license COPYING -%{_libdir}/libpsm2.so.2.1 +%{_libdir}/libpsm2.so.2.* %{_libdir}/libpsm2.so.2 %{_udevrulesdir}/40-psm.rules @@ -77,6 +74,17 @@ rm -f %{buildroot}%{_libdir}/*.a %{_sysconfdir}/modprobe.d/libpsm2-compat.conf %changelog +* Tue Dec 31 2024 xu_ping <707078654@qq.com> - 12.0.1-1 +- Upgrade version to 12.0.1 + * Reset rpm_release_extension to "1" for psm-v12.0 series + * Remove bashisms from Makefile + * Replace CUDA events with cuStreamSynchronize + * Remove ad_context from psmi_mpool_create_for_cuda; ad_context was not +used. H/t Jonas Hahnfeld. + * Add support for clang. + * Add support for gcc 10. + * Change default value of MQ_HFI_THRESH_EGR_SDMA_SQ_XEON to 16384. + * Mon Sep 4 2023 liyanan - 10.3.58-11 - Add D_FORTIFY_SOURC compile option to solve self-compilation failure problem