From b67c85e9d95ba3978fc3188ce56982966c828f80 Mon Sep 17 00:00:00 2001 From: handreas <andreas.hamacher@monash.edu> Date: Fri, 15 Oct 2021 11:53:12 +1100 Subject: [PATCH] updating spank plugin --- .../files/spank-private-tmp/private-tmpdir.c | 43 ++++++++----------- roles/slurm-start/tasks/main.yml | 22 +++++----- 2 files changed, 28 insertions(+), 37 deletions(-) diff --git a/roles/slurm-common/files/spank-private-tmp/private-tmpdir.c b/roles/slurm-common/files/spank-private-tmp/private-tmpdir.c index e1d82bd7..c685c23d 100644 --- a/roles/slurm-common/files/spank-private-tmp/private-tmpdir.c +++ b/roles/slurm-common/files/spank-private-tmp/private-tmpdir.c @@ -54,29 +54,19 @@ static int _tmpdir_init_opts(spank_t sp, int ac, char **av); */ int slurm_spank_init(spank_t sp, int ac, char **av) { - if (spank_context () != S_CTX_REMOTE) - return (0); + if (spank_context () != S_CTX_REMOTE) return (0); return _tmpdir_init_opts(sp, ac, av); } int slurm_spank_exit(spank_t sp, int ac, char **av) { - if (spank_context () != S_CTX_REMOTE) - return (0); + if (spank_context () != S_CTX_REMOTE) return (0); return _tmpdir_cleanup(sp, ac, av); } int slurm_spank_job_prolog(spank_t sp, int ac, char **av) -{ - slurm_error("private-tmpdir: slurm_spamk_job_prolog"); - return 0; -} - -int _slurm_spank_job_prolog(spank_t sp, int ac, char **av) { int rc, i; - if (spank_context () != S_CTX_REMOTE) - return (0); if (_tmpdir_init(sp, ac, av)) return -1; for (i = 0; i < base_count; i++) { @@ -144,10 +134,6 @@ int slurm_spank_init_post_opt(spank_t sp, int ac, char **av) { if (spank_context () != S_CTX_REMOTE) return (0); - int rc = _slurm_spank_job_prolog(sp,ac,av); - if(rc) { - return rc; - } return _tmpdir_bind(sp, ac, av); } @@ -205,22 +191,27 @@ static int _tmpdir_bind(spank_t sp, int ac, char **av) static int _tmpdir_cleanup(spank_t sp, int ac, char **av) { - return 0; char *prev_base = NULL; int i; - for (i = 0; i < MAX_BIND_DIRS; i++) { + for (i = 0; i < base_count; i++) { if (bases[i] != prev_base) { prev_base = bases[i]; - slurm_error("private-tmpdir: bases: free: %p", bases[i]); - free(bases[i]); + if(bases[i]) { + free(bases[i]); + } + } + if(base_paths[i]) { + free(base_paths[i]); + } + } + for (i = 0; i < bind_count; i++) { + if(bind_dirs[i]) { + free(bind_dirs[i]); + } + if(bind_paths[i]) { + free(bind_paths[i]); } - slurm_error("private-tmpdir: base_paths: free: %p", base_paths[i]); - free(base_paths[i]); - slurm_error("private-tmpdir: bind_dirs: free: %p", bind_dirs[i]); - free(bind_dirs[i]); - slurm_error("private-tmpdir: bind_paths: free: %p", bind_paths[i]); - free(bind_paths[i]); } return 0; } diff --git a/roles/slurm-start/tasks/main.yml b/roles/slurm-start/tasks/main.yml index 364ff96e..b635b5bf 100644 --- a/roles/slurm-start/tasks/main.yml +++ b/roles/slurm-start/tasks/main.yml @@ -43,17 +43,17 @@ when: use_systemd is defined and start_slurmd is defined register: slurmd_service_installed -- name: copy slurmd.service backup - template: dest=/etc/systemd/system/slurmd.service src=slurmd.service.secondary.j2 mode=644 - become: true - register: slurmd_service_installed - tags: [never,DEPLOYSLURMDSERVICEBACKUP] - -- name: reload systemd after copying secondary slurmd.service backup - systemd: - daemon_reload: yes - become: true - tags: [never,DEPLOYSLURMDSERVICEBACKUP] +#- name: copy slurmd.service backup +# template: dest=/etc/systemd/system/slurmd.service src=slurmd.service.secondary.j2 mode=644 +# become: true +# register: slurmd_service_installed +# tags: [never,DEPLOYSLURMDSERVICEBACKUP] + +#- name: reload systemd after copying secondary slurmd.service backup +# systemd: +# daemon_reload: yes +# become: true +# tags: [never,DEPLOYSLURMDSERVICEBACKUP] - name: deploy glusterfsheltest template: dest=/etc/systemd/system/glusterfsheltest.sh src=templates/glusterfsheltest.sh.j2 mode=744 -- GitLab