forked from pool/slurm
Accepting request 587828 from network:cluster
OBS-URL: https://build.opensuse.org/request/show/587828 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/slurm?expand=0&rev=10
This commit is contained in:
commit
d6b57f2b49
@ -1,45 +0,0 @@
|
||||
From: Egbert Eich <eich@freedesktop.org>
|
||||
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 <eich@freedesktop.org>
|
||||
Signed-off-by: Egbert Eich <eich@suse.de>
|
||||
---
|
||||
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__);
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:faf4704505dfc5b6fa199f099d36dbc3d23faf149251f36672631dbbbe3b1b71
|
||||
size 6053443
|
3
slurm-17.11.5.tar.bz2
Normal file
3
slurm-17.11.5.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:39f5c53bc101909494c4abc1fb47a8cd86cba16ec77503aa9e994c11bef7f01d
|
||||
size 6248551
|
2
slurm-rpmlintrc
Normal file
2
slurm-rpmlintrc
Normal file
@ -0,0 +1,2 @@
|
||||
addFilter(".*obsolete-not-provided slurm-sched-wiki.*")
|
||||
addFilter(".*obsolete-not-provided slurmdb-direct.*")
|
@ -1,3 +1,74 @@
|
||||
-------------------------------------------------------------------
|
||||
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
|
||||
|
||||
- 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
|
||||
- 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.
|
||||
- Fix some rpmlint warnings.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 29 13:43:57 UTC 2018 - cgoll@suse.com
|
||||
|
||||
|
34
slurm.spec
34
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.5
|
||||
# so-version is 0 and seems to be stable
|
||||
%define pmi_so 0
|
||||
|
||||
@ -63,12 +63,10 @@ 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: 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 +148,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 +313,6 @@ for the slurm daemons.
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
|
||||
%build
|
||||
%configure --enable-shared \
|
||||
@ -384,6 +378,7 @@ sed -i 's#^\(SlurmdSpoolDir=\)/.*#\1%{_localstatedir}/spool/slurm#' %{buildroot}
|
||||
cat >>%{buildroot}/%{_sysconfdir}/%{name}/slurm.conf <<EOF
|
||||
# SUSE default configuration
|
||||
PropagateResourceLimitsExcept=MEMLOCK
|
||||
# Epilog will clean node, which means it will kill all remaining processes of the user
|
||||
Epilog=/etc/slurm/slurm.epilog.clean
|
||||
NodeName=linux State=UNKNOWN
|
||||
PartitionName=normal Nodes=linux Default=YES MaxTime=24:00:00 State=UP
|
||||
@ -391,6 +386,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:
|
||||
@ -533,7 +530,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
|
||||
@ -679,7 +676,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
|
||||
@ -693,8 +690,9 @@ 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
|
||||
%{_libdir}/slurm/accounting_storage_none.so
|
||||
%{_libdir}/slurm/accounting_storage_slurmdbd.so
|
||||
@ -704,7 +702,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 +737,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 +775,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
|
||||
|
@ -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
|
@ -1,45 +0,0 @@
|
||||
From: Egbert Eich <eich@suse.com>
|
||||
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 <eich@suse.com>
|
||||
Signed-off-by: Egbert Eich <eich@suse.de>
|
||||
---
|
||||
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");
|
Loading…
Reference in New Issue
Block a user