diff --git a/NEWS b/NEWS index 282d15aeaacf56992d9a46642171bd4aa44e0e8d..e716cb10207f4b7745729f8aadbdd5ea468bb8ab 100644 --- a/NEWS +++ b/NEWS @@ -274,6 +274,8 @@ documents those changes that are of interest to users and administrators. -- Prevent sbatch from trying to enable debug messages when using job arrays. -- Prevent sbcast from enabling "--preserve" when specifying a jobid. -- Prevent wrong error message from spank plugin stack on GLOB_NOSPACE error. + -- Fix proctrack/lua plugin to prevent possible deadlock. + -- Prevent infinite loop in slurmstepd if execve fails. * Changes in Slurm 15.08.11 =========================== diff --git a/src/plugins/proctrack/lua/proctrack_lua.c b/src/plugins/proctrack/lua/proctrack_lua.c index 280c9f7b9624cde5e28e90e5726263c4084507ca..9bb3f03c3640b79bce0a9200b934871f34786bf9 100644 --- a/src/plugins/proctrack/lua/proctrack_lua.c +++ b/src/plugins/proctrack/lua/proctrack_lua.c @@ -464,7 +464,7 @@ uint64_t proctrack_p_find (pid_t pid) lua_pop (L, -1); out: - slurm_mutex_lock (&lua_lock); + slurm_mutex_unlock (&lua_lock); return (id); } diff --git a/src/slurmd/slurmstepd/mgr.c b/src/slurmd/slurmstepd/mgr.c index c02770657ecd6ad6d4c3f7c56441a48201a6b638..bfb0fa324ca8dad662d835fa58fd621a8fbed2a2 100644 --- a/src/slurmd/slurmstepd/mgr.c +++ b/src/slurmd/slurmstepd/mgr.c @@ -2818,7 +2818,7 @@ _run_script_as_user(const char *name, const char *path, stepd_step_rec_t *job, while (1) { execve(path, argv, env); error("execve(%s): %m", path); - if ((errno == ENFILE) || (errno = ENOMEM)) { + if ((errno == ENFILE) || (errno == ENOMEM)) { /* System limit on open files or memory reached, * retry after short delay */ sleep(1);