diff --git a/check-for-lipmix.so.MAJOR.patch b/check-for-lipmix.so.MAJOR.patch deleted file mode 100644 index 9995376..0000000 --- a/check-for-lipmix.so.MAJOR.patch +++ /dev/null @@ -1,46 +0,0 @@ -From: Christian Goll -Date: Thu Feb 27 17:09:11 2020 +0100 -Subject: check for lipmix.so.MAJOR -Patch-mainline: Not yet -Git-commit: 6a280d70ba914a4c9734986b353fbb0e76eb664b -References: - -This is a hack with a safety net included: make sure -PMIX version is 3 for PMX .so version 2. - -Edited-by: Egbert Eich ---- - slurm-20.02.0/src/plugins/mpi/pmix/mpi_pmix.c | 17 ++++++++++++++++- - 1 file changed, 16 insertions(+), 1 deletion(-) -diff --git a/src/plugins/mpi/pmix/mpi_pmix.c b/src/plugins/mpi/pmix/mpi_pmix.c -index 7a65895..e18b01d 100644 ---- a/src/plugins/mpi/pmix/mpi_pmix.c -+++ b/src/plugins/mpi/pmix/mpi_pmix.c -@@ -109,6 +109,18 @@ static void *_libpmix_open(void) - #endif - xstrfmtcat(full_path, "libpmix.so"); - -+/* -+ * pmix.so library age is 2 for pmi version 3 -+ */ -+#if defined (PMIX_SO) -+# if HAVE_PMIX_VER != 3 || PMIX_SO != 2 -+# error PMIX .so != 2 or PMIX version != 3 -+# else -+# define PMIX_SO_STRING "2" -+# endif -+ lib_plug = dlopen("libpmix.so."PMIX_SO_STRING, RTLD_LAZY | RTLD_GLOBAL); -+ if(!lib_plug) -+#endif - lib_plug = dlopen(full_path, RTLD_LAZY | RTLD_GLOBAL); - xfree(full_path); - -@@ -130,7 +145,7 @@ extern int init(void) - { - libpmix_plug = _libpmix_open(); - if (!libpmix_plug) { -- PMIXP_ERROR("pmi/pmix: can not load PMIx library"); -+ PMIXP_ERROR("pmi/pmix: can not load PMIx library: %d",(int) HAVE_PMIX_VER); - return SLURM_ERROR; - } - return SLURM_SUCCESS; diff --git a/load-pmix-major-version.patch b/load-pmix-major-version.patch new file mode 100644 index 0000000..8ae282e --- /dev/null +++ b/load-pmix-major-version.patch @@ -0,0 +1,33 @@ +From dfc32b8dd2e5899b191cf680105a52748d8ea359 Mon Sep 17 00:00:00 2001 +From: Christian Goll +Date: Tue, 23 Feb 2021 13:45:11 +0100 +Subject: [PATCH] load pmix major version + +--- + src/plugins/mpi/pmix/mpi_pmix.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/src/plugins/mpi/pmix/mpi_pmix.c b/src/plugins/mpi/pmix/mpi_pmix.c +index 69c5191112..bdbf011162 100644 +--- a/src/plugins/mpi/pmix/mpi_pmix.c ++++ b/src/plugins/mpi/pmix/mpi_pmix.c +@@ -112,10 +112,14 @@ static void *_libpmix_open(void) + xstrfmtcat(full_path, "%s/", PMIXP_V2_LIBPATH); + #elif defined PMIXP_V3_LIBPATH + xstrfmtcat(full_path, "%s/", PMIXP_V3_LIBPATH); ++#define PMIX_SO_STRING ".2" + #endif + xstrfmtcat(full_path, "libpmix.so"); +- +- lib_plug = dlopen(full_path, RTLD_LAZY | RTLD_GLOBAL); ++#ifdef PMIX_SO_STRING ++ lib_plug = dlopen("libpmix.so"PMIX_SO_STRING, RTLD_LAZY | RTLD_GLOBAL); ++ if(!lib_plug) ++#endif ++ lib_plug = dlopen(full_path, RTLD_LAZY | RTLD_GLOBAL); + xfree(full_path); + + if (lib_plug && (HAVE_PMIX_VER != pmixp_lib_get_version())) { +-- +2.26.2 + diff --git a/slurm-20.11.3.tar.bz2 b/slurm-20.11.3.tar.bz2 deleted file mode 100644 index 2de78a4..0000000 --- a/slurm-20.11.3.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:731558f4fde8c9b0935e0fcd9b769fe7338930a4b9dcfada305d0303bde9e0e8 -size 6530011 diff --git a/slurm-20.11.4.tar.bz2 b/slurm-20.11.4.tar.bz2 new file mode 100644 index 0000000..6a10b02 --- /dev/null +++ b/slurm-20.11.4.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c4899d337279c7ba3caf23d8333f8f0a250ba18ed4b46489bbbb68ed1fb1350 +size 6540096 diff --git a/slurm.changes b/slurm.changes index 4b804ca..70650d0 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,3 +1,33 @@ +------------------------------------------------------------------- +Tue Feb 23 16:24:16 UTC 2021 - Christian Goll + +- Udpate to 20.11.04 + * Fix node selection for advanced reservations with features. + * mpi/pmix: Handle pipe failure better when using ucx. + * mpi/pmix: include PMIX_NODEID for each process entry. + * Fix job getting rejected after being requeued on same node that died. + * job_submit/lua - add "network" field. + * Fix situations when a reoccuring reservation could erroneously skip a + period. + * Ensure that a reservations [pro|epi]log are ran on reoccuring reservations. + * Fix threads-per-core memory allocation issue when using CR_CPU_MEMORY. + * Fix scheduling issue with --gpus. + * Fix gpu allocations that request --cpus-per-task. + * mpi/pmix: fixed print messages for all PMIXP_* macros + * Add mapping for XCPU to --signal option. + * Fix regression in 20.11 that prevented a full pass of the main scheduler + from ever executing. + * Work around a glibc bug in which "0" is incorrectly printed as "nan" + which will result in corrupted association state on restart. + * Fix regression in 20.11 which made slurmd incorrectly attempt to find the + parent slurmd address when not applicable and send incorrect reverse*tree + info to the slurmstepd. + * Fix cgroup ns detection when using containers (e.g. LXC or Docker). + * scrontab - change temporary file handling to work with emacs. +- Removed check-for-lipmix.so.MAJOR.patch +- Added: load-pmix-major-version.patch + + ------------------------------------------------------------------- Wed Jan 20 10:13:23 UTC 2021 - Ana Guerrero Lopez diff --git a/slurm.spec b/slurm.spec index ce4a6dd..aa0aef7 100644 --- a/slurm.spec +++ b/slurm.spec @@ -18,7 +18,7 @@ # Check file META in sources: update so_version to (API_CURRENT - API_AGE) %define so_version 36 -%define ver 20.11.3 +%define ver 20.11.4 %define _ver _20_11 %define dl_ver %{ver} # so-version is 0 and seems to be stable @@ -134,7 +134,7 @@ Source1: slurm-rpmlintrc Patch0: Remove-rpath-from-build.patch Patch1: slurm-2.4.4-init.patch Patch2: pam_slurm-Initialize-arrays-and-pass-sizes.patch -Patch3: check-for-lipmix.so.MAJOR.patch +Patch3: load-pmix-major-version.patch %{?upgrade:Provides: %{pname} = %{version}} %{?upgrade:Conflicts: %{pname}} @@ -148,6 +148,8 @@ Recommends: %{name}-munge = %version Requires(pre): %{name}-node = %{version} Recommends: %{name}-doc = %{version} Recommends: %{name}-config-man = %{version} +BuildRequires: autoconf +BuildRequires: automake BuildRequires: coreutils BuildRequires: fdupes BuildRequires: gcc-c++ @@ -556,14 +558,15 @@ mkdir -p mybin; ln -s /usr/bin/python2 mybin/python3 %endif %build +autoreconf %define _lto_cflags %{nil} [ -e $(pwd)/mybin ] && PATH=$(pwd)/mybin:$PATH -export CPPFLAGS=-DPMIX_SO=%{pmix_so} %configure --enable-shared \ --disable-static \ --without-rpath \ --without-datawarp \ --with-shared-libslurm \ + --with-pmix=/usr/ \ %if 0%{?build_slurmrestd} --enable-slurmrestd \ %endif