From a59a0c2cedfe540205e880a4683b1da09142373a206bd657cf5f792123d85d48 Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Wed, 7 Mar 2018 15:28:17 +0000 Subject: [PATCH 1/7] - Fix user/group settings (boo#1084333) * Fix user/group for /var/run/slurm the PID file directory. * Fix user/group in systemd service files for process ownership. OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=41 --- slurm.changes | 7 +++++++ slurm.spec | 13 ++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/slurm.changes b/slurm.changes index a395a8d..c74ac05 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Wed Mar 7 14:20:06 UTC 2018 - eich@suse.com + +- Fix user/group settings (boo#1084333) + * Fix user/group for /var/run/slurm the PID file directory. + * Fix user/group in systemd service files for process ownership. + ------------------------------------------------------------------- Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com diff --git a/slurm.spec b/slurm.spec index c82bb08..a8a47ae 100644 --- a/slurm.spec +++ b/slurm.spec @@ -335,13 +335,24 @@ make install-contrib DESTDIR=%{buildroot} PERL_MM_PARAMS="INSTALLDIRS=vendor" %if 0%{?with_systemd} mkdir -p %{buildroot}%{_unitdir} install -p -m644 etc/slurmd.service etc/slurmdbd.service etc/slurmctld.service %{buildroot}%{_unitdir} +# Fix up User/Group of slurmd/slurmctld service. +for i in slurmd.service slurmctld.service; +do + grep -Eq "^Group=" %{buildroot}%{_unitdir}/$i && \ + sed-i -e "s/Group=.*/User=%slurm_g/" %{buildroot}%{_unitdir}/$i || \ + sed -i -e "/\[Service\]/aGroup=%slurm_g" %{buildroot}%{_unitdir}/$i + grep -Eq "^User=" %{buildroot}%{_unitdir}/$i && \ + sed -i -e "s/User=.*/User=%slurm_u/" %{buildroot}%{_unitdir}/$i || \ + sed -i -e "/\[Service\]/aUser=%slurm_u" %{buildroot}%{_unitdir}/$i +done + ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmd ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmdbd ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmctld install -d -m 0755 %{buildroot}/%{_tmpfilesdir}/ cat <<-EOF > %{buildroot}/%{_tmpfilesdir}/%{name}.conf # Create a directory with permissions 0700 owned by user slurm, group slurm - d /var/run/slurm 0700 slurm slurm + d /var/run/slurm 0700 %slurm_u %slurm_g EOF chmod 0644 %{buildroot}/%{_tmpfilesdir}/%{name}.conf %else From 903545a8b94dd01492b514f4e9ededdc6a4bf128700d0ad6e5dbb074130656cd Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Wed, 7 Mar 2018 16:57:41 +0000 Subject: [PATCH 2/7] * Create a separate logdir for slurm as well. OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=42 --- slurm.changes | 1 + slurm.spec | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/slurm.changes b/slurm.changes index c74ac05..6216419 100644 --- a/slurm.changes +++ b/slurm.changes @@ -4,6 +4,7 @@ Wed Mar 7 14:20:06 UTC 2018 - eich@suse.com - Fix user/group settings (boo#1084333) * Fix user/group for /var/run/slurm the PID file directory. * Fix user/group in systemd service files for process ownership. + * Create a separate logdir for slurm as well. ------------------------------------------------------------------- Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com diff --git a/slurm.spec b/slurm.spec index a8a47ae..574f137 100644 --- a/slurm.spec +++ b/slurm.spec @@ -187,7 +187,7 @@ Obsoletes: slurm-auth-munge < %{version} Provides: slurm-auth-munge = %{version} %description munge -This package contains the SLURM authentication module for Chris Dunlap's Munge. +This package contains the SLURM authentication module for Chris Dunlap''s Munge. %package sview Summary: SLURM graphical interface @@ -345,6 +345,10 @@ do sed -i -e "s/User=.*/User=%slurm_u/" %{buildroot}%{_unitdir}/$i || \ sed -i -e "/\[Service\]/aUser=%slurm_u" %{buildroot}%{_unitdir}/$i done +%if "%slurm_u" != "root" +%define slurmlogdir %{_localstatedir}/log/%{name} +install -d -m 755 %{buildroot}%{slurmlogdir} +%endif ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmd ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmdbd @@ -392,6 +396,8 @@ sed -i 's#\(StateSaveLocation=\).*#\1%_localstatedir/lib/slurm#' %{buildroot}/% sed -i 's#^\(SlurmdPidFile=\).*$#\1%{_localstatedir}/run/slurm/slurmd.pid#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf sed -i 's#^\(SlurmctldPidFile=\).*$#\1%{_localstatedir}/run/slurm/slurmctld.pid#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf sed -i 's#^\(SlurmdSpoolDir=\)/.*#\1%{_localstatedir}/spool/slurm#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf +%{?slurmlogdir:sed -i 's#^\(SlurmctldLogFile=\)/.*#\1%{slurmlogdir}#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf} +%{?slurmlogdir:sed -i 's#^\(SlurmLogFile=\)/.*#\1%{slurmlogdir}#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf} cat >>%{buildroot}/%{_sysconfdir}/%{name}/slurm.conf < Date: Wed, 7 Mar 2018 20:21:50 +0000 Subject: [PATCH 3/7] - Remove the last two commits, changes were invalid. OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=43 --- slurm.changes | 8 -------- slurm.spec | 22 ++-------------------- 2 files changed, 2 insertions(+), 28 deletions(-) diff --git a/slurm.changes b/slurm.changes index 6216419..a395a8d 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,11 +1,3 @@ -------------------------------------------------------------------- -Wed Mar 7 14:20:06 UTC 2018 - eich@suse.com - -- Fix user/group settings (boo#1084333) - * Fix user/group for /var/run/slurm the PID file directory. - * Fix user/group in systemd service files for process ownership. - * Create a separate logdir for slurm as well. - ------------------------------------------------------------------- Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com diff --git a/slurm.spec b/slurm.spec index 574f137..c82bb08 100644 --- a/slurm.spec +++ b/slurm.spec @@ -187,7 +187,7 @@ Obsoletes: slurm-auth-munge < %{version} Provides: slurm-auth-munge = %{version} %description munge -This package contains the SLURM authentication module for Chris Dunlap''s Munge. +This package contains the SLURM authentication module for Chris Dunlap's Munge. %package sview Summary: SLURM graphical interface @@ -335,28 +335,13 @@ make install-contrib DESTDIR=%{buildroot} PERL_MM_PARAMS="INSTALLDIRS=vendor" %if 0%{?with_systemd} mkdir -p %{buildroot}%{_unitdir} install -p -m644 etc/slurmd.service etc/slurmdbd.service etc/slurmctld.service %{buildroot}%{_unitdir} -# Fix up User/Group of slurmd/slurmctld service. -for i in slurmd.service slurmctld.service; -do - grep -Eq "^Group=" %{buildroot}%{_unitdir}/$i && \ - sed-i -e "s/Group=.*/User=%slurm_g/" %{buildroot}%{_unitdir}/$i || \ - sed -i -e "/\[Service\]/aGroup=%slurm_g" %{buildroot}%{_unitdir}/$i - grep -Eq "^User=" %{buildroot}%{_unitdir}/$i && \ - sed -i -e "s/User=.*/User=%slurm_u/" %{buildroot}%{_unitdir}/$i || \ - sed -i -e "/\[Service\]/aUser=%slurm_u" %{buildroot}%{_unitdir}/$i -done -%if "%slurm_u" != "root" -%define slurmlogdir %{_localstatedir}/log/%{name} -install -d -m 755 %{buildroot}%{slurmlogdir} -%endif - ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmd ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmdbd ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcslurmctld install -d -m 0755 %{buildroot}/%{_tmpfilesdir}/ cat <<-EOF > %{buildroot}/%{_tmpfilesdir}/%{name}.conf # Create a directory with permissions 0700 owned by user slurm, group slurm - d /var/run/slurm 0700 %slurm_u %slurm_g + d /var/run/slurm 0700 slurm slurm EOF chmod 0644 %{buildroot}/%{_tmpfilesdir}/%{name}.conf %else @@ -396,8 +381,6 @@ sed -i 's#\(StateSaveLocation=\).*#\1%_localstatedir/lib/slurm#' %{buildroot}/% sed -i 's#^\(SlurmdPidFile=\).*$#\1%{_localstatedir}/run/slurm/slurmd.pid#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf sed -i 's#^\(SlurmctldPidFile=\).*$#\1%{_localstatedir}/run/slurm/slurmctld.pid#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf sed -i 's#^\(SlurmdSpoolDir=\)/.*#\1%{_localstatedir}/spool/slurm#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf -%{?slurmlogdir:sed -i 's#^\(SlurmctldLogFile=\)/.*#\1%{slurmlogdir}#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf} -%{?slurmlogdir:sed -i 's#^\(SlurmLogFile=\)/.*#\1%{slurmlogdir}#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.conf} cat >>%{buildroot}/%{_sysconfdir}/%{name}/slurm.conf < Date: Thu, 15 Mar 2018 07:03:02 +0000 Subject: [PATCH 4/7] Accepting request 587092 from home:eeich:branches:network:cluster - Update slurm to v17.11.4 (FATE#325451) * Link dynamically to libslurm.so to reduce footprint of all binaries. * Remove plugins for obsolete MPI stacks: - lam - mpich1_p4 - mpich1_shmem - mvapich * Numerous fixes - check 'NEWS' file. - slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch: Removed. Code upstream. - slurmctld-service-var-run-path.patch: Replaced by sed script. OBS-URL: https://build.opensuse.org/request/show/587092 OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=44 --- ...-Fix-slurmd-for-new-API-in-hwloc-2.0.patch | 45 ------------------- slurm-17.02.9.tar.bz2 | 3 -- slurm-17.11.4.tar.bz2 | 3 ++ slurm.changes | 18 ++++++++ slurm.spec | 26 ++++------- slurmctld-service-var-run-path.patch | 39 ---------------- ...-Fix-slurmd-for-new-API-in-hwloc-2.0.patch | 45 ------------------- 7 files changed, 29 insertions(+), 150 deletions(-) delete mode 100644 plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch delete mode 100644 slurm-17.02.9.tar.bz2 create mode 100644 slurm-17.11.4.tar.bz2 delete mode 100644 slurmctld-service-var-run-path.patch delete mode 100644 slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch diff --git a/plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch b/plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch deleted file mode 100644 index 8921ea9..0000000 --- a/plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch +++ /dev/null @@ -1,45 +0,0 @@ -From: Egbert Eich -Date: Sun Oct 16 13:10:39 2016 +0200 -Subject: plugins/cgroup: Fix slurmd for new API in hwloc-2.0 -Git-repo: https://github.com/SchedMD/slurm -Git-commit: 018eee7d8dee1f769477263a891948e5bca8f738 -References: - -The API of hwloc has changed considerably for version 2.0. -For a summary check: -https://github.com/open-mpi/hwloc/wiki/Upgrading-to-v2.0-API -Test for the API version to support both the old and new API. - -Signed-off-by: Egbert Eich -Signed-off-by: Egbert Eich ---- - src/plugins/task/cgroup/task_cgroup_cpuset.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) -diff --git a/src/plugins/task/cgroup/task_cgroup_cpuset.c b/src/plugins/task/cgroup/task_cgroup_cpuset.c -index 9c41ea4..94a4b09 100644 ---- a/src/plugins/task/cgroup/task_cgroup_cpuset.c -+++ b/src/plugins/task/cgroup/task_cgroup_cpuset.c -@@ -641,8 +641,23 @@ static int _get_cpuinfo(uint32_t *nsockets, uint32_t *ncores, - /* parse full system info */ - hwloc_topology_set_flags(topology, HWLOC_TOPOLOGY_FLAG_WHOLE_SYSTEM); - /* ignores cache, misc */ -+#if HWLOC_API_VERSION < 0x00020000 - hwloc_topology_ignore_type (topology, HWLOC_OBJ_CACHE); - hwloc_topology_ignore_type (topology, HWLOC_OBJ_MISC); -+#else -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L1CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L2CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L3CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L4CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L5CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_MISC, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+#endif - /* load topology */ - if (hwloc_topology_load(topology)) { - error("%s: hwloc_topology_load() failed", __func__); diff --git a/slurm-17.02.9.tar.bz2 b/slurm-17.02.9.tar.bz2 deleted file mode 100644 index 608710f..0000000 --- a/slurm-17.02.9.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:faf4704505dfc5b6fa199f099d36dbc3d23faf149251f36672631dbbbe3b1b71 -size 6053443 diff --git a/slurm-17.11.4.tar.bz2 b/slurm-17.11.4.tar.bz2 new file mode 100644 index 0000000..fe787fe --- /dev/null +++ b/slurm-17.11.4.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18216a38e5660bbb340d906480b4f663192e158e9a9eaa8e713415c9e4766df2 +size 6203468 diff --git a/slurm.changes b/slurm.changes index a395a8d..49a64b2 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Wed Mar 14 19:34:58 UTC 2018 - eich@suse.com + +- Update slurm to v17.11.4 (FATE#325451) + * Link dynamically to libslurm.so to reduce footprint + of all binaries. + * Remove plugins for obsolete MPI stacks: + - lam + - mpich1_p4 + - mpich1_shmem + - mvapich + * Numerous fixes - check 'NEWS' file. +- slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch + plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch: + Removed. Code upstream. +- slurmctld-service-var-run-path.patch: + Replaced by sed script. + ------------------------------------------------------------------- Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com diff --git a/slurm.spec b/slurm.spec index c82bb08..0c41981 100644 --- a/slurm.spec +++ b/slurm.spec @@ -17,8 +17,8 @@ # Check file META in sources: update so_version to (API_CURRENT - API_AGE) -%define so_version 31 -%define ver 17.02.9 +%define so_version 32 +%define ver 17.11.4 # so-version is 0 and seems to be stable %define pmi_so 0 @@ -65,10 +65,7 @@ Url: https://computing.llnl.gov/linux/slurm/ Source: https://download.schedmd.com/slurm/%{name}-%{ver}.tar.bz2 Patch0: slurm-2.4.4-rpath.patch Patch1: slurm-2.4.4-init.patch -Patch2: slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch -Patch3: plugins-cgroup-Fix-slurmd-for-new-API-in-hwloc-2.0.patch -Patch4: pam_slurm-Initialize-arrays-and-pass-sizes.patch -Patch5: slurmctld-service-var-run-path.patch +Patch2: pam_slurm-Initialize-arrays-and-pass-sizes.patch Requires: slurm-config = %{version} Requires: slurm-node = %{version} %if 0%{?suse_version} <= 1140 @@ -150,7 +147,6 @@ with SLURM. %package -n libpmi%{pmi_so} Summary: Libraries for SLURM Group: System/Libraries -Requires: %{libslurm} = %version %description -n libpmi%{pmi_so} This package contains the library needed to run programs dynamically linked @@ -316,9 +312,6 @@ for the slurm daemons. %patch0 -p1 %patch1 -p1 %patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 %build %configure --enable-shared \ @@ -391,6 +384,8 @@ EOF # 9/17/14 karl.w.schulz@intel.com - Add option to drop VM cache during epilog sed -i '/^# No other SLURM jobs,/i \\n# Drop clean caches (OpenHPC)\necho 3 > /proc/sys/vm/drop_caches\n\n#' %{buildroot}/%{_sysconfdir}/%{name}/slurm.epilog.clean mkdir -p %{buildroot}/%_localstatedir/lib/slurm +sed -i -e "s@PIDFile=.*@PIDFile=%{_localstatedir}/run/slurm/slurmctld.pid@" %{buildroot}/%{_unitdir}/slurmctld.service +sed -i -e "s@PIDFile=.*@PIDFile=%{_localstatedir}/run/slurm/slurmd.pid@" %{buildroot}/%{_unitdir}/slurmd.service %endif # Delete unpackaged files: @@ -695,6 +690,7 @@ exit 0 %defattr(-,root,root) %{_sysconfdir}/ld.so.conf.d/slurm.conf %dir %{_libdir}/slurm +%{_libdir}/slurm/libslurmfull.so %{_libdir}/slurm/accounting_storage_filetxt.so %{_libdir}/slurm/accounting_storage_none.so %{_libdir}/slurm/accounting_storage_slurmdbd.so @@ -704,7 +700,7 @@ exit 0 %{_libdir}/slurm/acct_gather_energy_rapl.so %{_libdir}/slurm/acct_gather_filesystem_lustre.so %{_libdir}/slurm/acct_gather_filesystem_none.so -%{_libdir}/slurm/acct_gather_infiniband_none.so +%{_libdir}/slurm/acct_gather_interconnect_none.so %{_libdir}/slurm/acct_gather_profile_none.so %{_libdir}/slurm/burst_buffer_generic.so %{_libdir}/slurm/checkpoint_none.so @@ -739,12 +735,6 @@ exit 0 %{_libdir}/slurm/mcs_group.so %{_libdir}/slurm/mcs_none.so %{_libdir}/slurm/mcs_user.so -%{_libdir}/slurm/mpi_lam.so -%{_libdir}/slurm/mpi_mpich1_p4.so -%{_libdir}/slurm/mpi_mpich1_shmem.so -%{_libdir}/slurm/mpi_mpichgm.so -%{_libdir}/slurm/mpi_mpichmx.so -%{_libdir}/slurm/mpi_mvapich.so %{_libdir}/slurm/mpi_none.so %{_libdir}/slurm/mpi_openmpi.so %{_libdir}/slurm/mpi_pmi2.so @@ -783,7 +773,7 @@ exit 0 %{_libdir}/slurm/topology_none.so %{_libdir}/slurm/topology_tree.so %if 0%{?suse_version} > 1310 -%{_libdir}/slurm/acct_gather_infiniband_ofed.so +%{_libdir}/slurm/acct_gather_interconnect_ofed.so %endif %if 0%{?suse_version} > 1140 %ifarch %{ix86} x86_64 diff --git a/slurmctld-service-var-run-path.patch b/slurmctld-service-var-run-path.patch deleted file mode 100644 index b115018..0000000 --- a/slurmctld-service-var-run-path.patch +++ /dev/null @@ -1,39 +0,0 @@ -Index: slurm-slurm-16-05-8-1/etc/slurmctld.service.in -=================================================================== ---- slurm-slurm-16-05-8-1.orig/etc/slurmctld.service.in -+++ slurm-slurm-16-05-8-1/etc/slurmctld.service.in -@@ -8,7 +8,7 @@ Type=forking - EnvironmentFile=-/etc/sysconfig/slurmctld - ExecStart=@sbindir@/slurmctld $SLURMCTLD_OPTIONS - ExecReload=/bin/kill -HUP $MAINPID --PIDFile=/var/run/slurmctld.pid -+PIDFile=/var/run/slurm/slurmctld.pid - - [Install] - WantedBy=multi-user.target -Index: slurm-slurm-16-05-8-1/etc/slurmd.service.in -=================================================================== ---- slurm-slurm-16-05-8-1.orig/etc/slurmd.service.in -+++ slurm-slurm-16-05-8-1/etc/slurmd.service.in -@@ -8,7 +8,7 @@ Type=forking - EnvironmentFile=-/etc/sysconfig/slurmd - ExecStart=@sbindir@/slurmd $SLURMD_OPTIONS - ExecReload=/bin/kill -HUP $MAINPID --PIDFile=/var/run/slurmd.pid -+PIDFile=/var/run/slurm/slurmd.pid - KillMode=process - LimitNOFILE=51200 - LimitMEMLOCK=infinity -Index: slurm-slurm-16-05-8-1/etc/slurmdbd.service.in -=================================================================== ---- slurm-slurm-16-05-8-1.orig/etc/slurmdbd.service.in -+++ slurm-slurm-16-05-8-1/etc/slurmdbd.service.in -@@ -8,7 +8,7 @@ Type=forking - EnvironmentFile=-/etc/sysconfig/slurmdbd - ExecStart=@sbindir@/slurmdbd $SLURMDBD_OPTIONS - ExecReload=/bin/kill -HUP $MAINPID --PIDFile=/var/run/slurmdbd.pid -+PIDFile=/var/run/slurm/slurmdbd.pid - - [Install] - WantedBy=multi-user.target diff --git a/slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch b/slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch deleted file mode 100644 index 91b6874..0000000 --- a/slurmd-Fix-slurmd-for-new-API-in-hwloc-2.0.patch +++ /dev/null @@ -1,45 +0,0 @@ -From: Egbert Eich -Date: Sun Oct 16 09:07:46 2016 +0200 -Subject: slurmd: Fix slurmd for new API in hwloc-2.0 -Git-repo: https://github.com/SchedMD/slurm -Git-commit: 2e431ed7fdf7a57c7ce1b5f3d3a8bbedaf94a51d -References: - -The API of hwloc has changed considerably for version 2.0. -For a summary check: -https://github.com/open-mpi/hwloc/wiki/Upgrading-to-v2.0-API -Test for the API version to support both the old and new API. - -Signed-off-by: Egbert Eich -Signed-off-by: Egbert Eich ---- - src/slurmd/common/xcpuinfo.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) -diff --git a/src/slurmd/common/xcpuinfo.c b/src/slurmd/common/xcpuinfo.c -index 4eec6cb..22a47d5 100644 ---- a/src/slurmd/common/xcpuinfo.c -+++ b/src/slurmd/common/xcpuinfo.c -@@ -212,8 +212,23 @@ get_cpuinfo(uint16_t *p_cpus, uint16_t *p_boards, - hwloc_topology_set_flags(topology, HWLOC_TOPOLOGY_FLAG_WHOLE_SYSTEM); - - /* ignores cache, misc */ -+#if HWLOC_API_VERSION < 0x00020000 - hwloc_topology_ignore_type (topology, HWLOC_OBJ_CACHE); - hwloc_topology_ignore_type (topology, HWLOC_OBJ_MISC); -+#else -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L1CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L2CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L3CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L4CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_L5CACHE, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+ hwloc_topology_set_type_filter(topology,HWLOC_OBJ_MISC, -+ HWLOC_TYPE_FILTER_KEEP_NONE); -+#endif - - /* load topology */ - debug2("hwloc_topology_load"); From 19ceb304e21df2552a0d497fbde59a40381caf499247c0556753084301501771 Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Thu, 15 Mar 2018 12:23:19 +0000 Subject: [PATCH 5/7] - Fixed some rpmlint warnings. OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=45 --- slurm-rpmlintrc | 2 ++ slurm.changes | 1 + slurm.spec | 7 ++++--- 3 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 slurm-rpmlintrc diff --git a/slurm-rpmlintrc b/slurm-rpmlintrc new file mode 100644 index 0000000..67a37bf --- /dev/null +++ b/slurm-rpmlintrc @@ -0,0 +1,2 @@ +addFilter(".*obsolete-not-provided slurm-sched-wiki.*") +addFilter(".*obsolete-not-provided slurmdb-direct.*") diff --git a/slurm.changes b/slurm.changes index 49a64b2..5201545 100644 --- a/slurm.changes +++ b/slurm.changes @@ -15,6 +15,7 @@ Wed Mar 14 19:34:58 UTC 2018 - eich@suse.com Removed. Code upstream. - slurmctld-service-var-run-path.patch: Replaced by sed script. +- Fixed some rpmlint warnings. ------------------------------------------------------------------- Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com diff --git a/slurm.spec b/slurm.spec index 0c41981..bf9a23b 100644 --- a/slurm.spec +++ b/slurm.spec @@ -63,6 +63,7 @@ License: SUSE-GPL-2.0-with-openssl-exception Group: Productivity/Clustering/Computing Url: https://computing.llnl.gov/linux/slurm/ Source: https://download.schedmd.com/slurm/%{name}-%{ver}.tar.bz2 +Source1: slurm-rpmlintrc Patch0: slurm-2.4.4-rpath.patch Patch1: slurm-2.4.4-init.patch Patch2: pam_slurm-Initialize-arrays-and-pass-sizes.patch @@ -528,7 +529,7 @@ exit 0 %post config %if 0%{?with_systemd} -%if 0%{?sle_version} >= 120200 +%if 0%{?tmpfiles_create:1} %tmpfiles_create slurm.conf %else systemd-tmpfiles --create slurm.conf @@ -674,7 +675,7 @@ exit 0 %config(noreplace) %{_sysconfdir}/%{name}/slurmdbd.conf %{_sysconfdir}/%{name}/slurmdbd.conf.example %if 0%{?with_systemd} -%config %{_unitdir}/slurmdbd.service +%{_unitdir}/slurmdbd.service %else %{_initrddir}/slurmdbd %endif @@ -688,7 +689,7 @@ exit 0 %files plugins %defattr(-,root,root) -%{_sysconfdir}/ld.so.conf.d/slurm.conf +%config %{_sysconfdir}/ld.so.conf.d/slurm.conf %dir %{_libdir}/slurm %{_libdir}/slurm/libslurmfull.so %{_libdir}/slurm/accounting_storage_filetxt.so From cbe6c9fcaa9f322b33de5a0298e4aa9cdb82a6c0a5ca50a70d137021e630c4ae Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Thu, 15 Mar 2018 19:52:49 +0000 Subject: [PATCH 6/7] Accepting request 587617 from home:eeich:branches:network:cluster - Fix security issue in accounting_storage/mysql plugin by always escaping strings within the slurmdbd. CVE-2018-7033 http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2018-7033 (bsc#1085240). - Update slurm to v17.11.5 (FATE#325451) Highlights of 17.11: * Support for federated clusters to manage a single work-flow across a set of clusters. * Support for heterogeneous job allocations (various processor types, memory sizes, etc. by job component). Support for heterogeneous job steps within a single MPI_COMM_WORLD is not yet supported for most configurations. * X11 support is now fully integrated with the main Slurm code. Remove any X11 plugin configured in your plugstack.conf file to avoid errors being logged about conflicting options. * Added new advanced reservation flag of "flex", which permits jobs requesting the reservation to begin prior to the reservation's start time and use resources inside or outside of the reservation. A typical use case is to prevent jobs not explicitly requesting the reservation from using those reserved resources rather than forcing jobs requesting the reservation to use those resources in the time frame reserved. * The sprio command has been modified to report a job's priority information for every partition the job has been submitted to. * Group ID lookup performed at job submit time to avoid lookup on all compute nodes. Enable with PrologFlags=SendGIDs configuration parameter. * Slurm commands and daemons dynamically link to libslurmfull.so instead of statically linking. This dramatically reduces the footprint of Slurm. OBS-URL: https://build.opensuse.org/request/show/587617 OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=46 --- slurm-17.11.4.tar.bz2 | 3 --- slurm-17.11.5.tar.bz2 | 3 +++ slurm.changes | 55 +++++++++++++++++++++++++++++++++++++++---- slurm.spec | 2 +- 4 files changed, 55 insertions(+), 8 deletions(-) delete mode 100644 slurm-17.11.4.tar.bz2 create mode 100644 slurm-17.11.5.tar.bz2 diff --git a/slurm-17.11.4.tar.bz2 b/slurm-17.11.4.tar.bz2 deleted file mode 100644 index fe787fe..0000000 --- a/slurm-17.11.4.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:18216a38e5660bbb340d906480b4f663192e158e9a9eaa8e713415c9e4766df2 -size 6203468 diff --git a/slurm-17.11.5.tar.bz2 b/slurm-17.11.5.tar.bz2 new file mode 100644 index 0000000..0216cff --- /dev/null +++ b/slurm-17.11.5.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39f5c53bc101909494c4abc1fb47a8cd86cba16ec77503aa9e994c11bef7f01d +size 6248551 diff --git a/slurm.changes b/slurm.changes index 5201545..82fbd5a 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,9 +1,56 @@ ------------------------------------------------------------------- Wed Mar 14 19:34:58 UTC 2018 - eich@suse.com -- Update slurm to v17.11.4 (FATE#325451) - * Link dynamically to libslurm.so to reduce footprint - of all binaries. +- Fix security issue in accounting_storage/mysql plugin by always escaping + strings within the slurmdbd. CVE-2018-7033 + http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2018-7033 + (bsc#1085240). +- Update slurm to v17.11.5 (FATE#325451) + Highlights of 17.11: + * Support for federated clusters to manage a single work-flow + across a set of clusters. + * Support for heterogeneous job allocations (various processor types, + memory sizes, etc. by job component). Support for heterogeneous job + steps within a single MPI_COMM_WORLD is not yet supported for most + configurations. + * X11 support is now fully integrated with the main Slurm code. Remove + any X11 plugin configured in your plugstack.conf file to avoid errors + being logged about conflicting options. + * Added new advanced reservation flag of "flex", which permits jobs + requesting the reservation to begin prior to the reservation's + start time and use resources inside or outside of the reservation. + A typical use case is to prevent jobs not explicitly requesting the + reservation from using those reserved resources rather than forcing + jobs requesting the reservation to use those resources in the time + frame reserved. + * The sprio command has been modified to report a job's priority + information for every partition the job has been submitted to. + * Group ID lookup performed at job submit time to avoid lookup on + all compute nodes. Enable with PrologFlags=SendGIDs configuration + parameter. + * Slurm commands and daemons dynamically link to libslurmfull.so + instead of statically linking. This dramatically reduces the + footprint of Slurm. + * In switch plugin, added plugin_id symbol to plugins and wrapped + switch_jobinfo_t with dynamic_plugin_data_t in interface calls + in order to pass switch information between clusters with different + switch types. + * Changed default ProctrackType to cgroup. + * Changed default sched_min_interval from 0 to 2 microseconds. + * Added new 'scontrol write batch_script ' command to fetch a job's + batch script. Removed the ability to see the script as part of the + 'scontrol -dd show job' command. + * Add new "billing" TRES which allows jobs to be limited based on the + job's billable TRES calculated by the job's partition's + TRESBillingWeights. + * Regular user use of "scontrol top" command is now disabled. Use the + configuration parameter "SchedulerParameters=enable_user_top" to + enable that functionality. The configuration parameter + "SchedulerParameters=disable_user_top" will be silently ignored. + * Change default to let pending jobs run outside of reservation after + reservation is gone to put jobs in held state. Added + NO_HOLD_JOBS_AFTER_END reservation flag to use old default. + Support for PMIx v2.0 as well as UCX support. * Remove plugins for obsolete MPI stacks: - lam - mpich1_p4 @@ -15,7 +62,7 @@ Wed Mar 14 19:34:58 UTC 2018 - eich@suse.com Removed. Code upstream. - slurmctld-service-var-run-path.patch: Replaced by sed script. -- Fixed some rpmlint warnings. +- Fix some rpmlint warnings. ------------------------------------------------------------------- Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com diff --git a/slurm.spec b/slurm.spec index bf9a23b..99fa1ad 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 32 -%define ver 17.11.4 +%define ver 17.11.5 # so-version is 0 and seems to be stable %define pmi_so 0 From 003175f991753693bed9e6fa893f767529c18f6972d4964f5fc582ee375aa6e5 Mon Sep 17 00:00:00 2001 From: Christian Goll Date: Fri, 16 Mar 2018 09:52:14 +0000 Subject: [PATCH 7/7] Accepting request 587822 from home:mslacken - added comment for (bsc#1085606) OBS-URL: https://build.opensuse.org/request/show/587822 OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=47 --- slurm.changes | 5 +++++ slurm.spec | 1 + 2 files changed, 6 insertions(+) diff --git a/slurm.changes b/slurm.changes index 82fbd5a..852c3a2 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri Mar 16 08:57:20 UTC 2018 - cgoll@suse.com + +- added comment for (bsc#1085606) + ------------------------------------------------------------------- Wed Mar 14 19:34:58 UTC 2018 - eich@suse.com diff --git a/slurm.spec b/slurm.spec index 99fa1ad..c481042 100644 --- a/slurm.spec +++ b/slurm.spec @@ -378,6 +378,7 @@ sed -i 's#^\(SlurmdSpoolDir=\)/.*#\1%{_localstatedir}/spool/slurm#' %{buildroot} cat >>%{buildroot}/%{_sysconfdir}/%{name}/slurm.conf <