View | Details | Raw Unified | Return to ticket 8656 | Differences between
and this patch

Collapse All | Expand All

(-)a/src/plugins/jobacct_gather/cgroup/jobacct_gather_cgroup.c (+2 lines)
Lines 147-152 static void _prec_extra(jag_prec_t *prec, uint32_t taskid) Link Here
147
		prec->ssec = stime;
147
		prec->ssec = stime;
148
	}
148
	}
149
149
150
	info("%s: calling xcgroup_get_param for pid %d",
151
	      __func__, prec->pid);
150
	xcgroup_get_param(task_memory_cg, "memory.stat",
152
	xcgroup_get_param(task_memory_cg, "memory.stat",
151
			  &memory_stat, &memory_stat_size);
153
			  &memory_stat, &memory_stat_size);
152
	if (memory_stat == NULL) {
154
	if (memory_stat == NULL) {
(-)a/src/slurmd/common/xcgroup.c (-2 / +2 lines)
Lines 648-653 int xcgroup_get_param(xcgroup_t* cg, char* param, char **content, size_t *csize) Link Here
648
		if (fstatus != XCGROUP_SUCCESS)
648
		if (fstatus != XCGROUP_SUCCESS)
649
			debug2("%s: unable to get parameter '%s' for '%s'",
649
			debug2("%s: unable to get parameter '%s' for '%s'",
650
				__func__, param, cpath);
650
				__func__, param, cpath);
651
		info("%s: file_path=%s size=%zu content=%s",
652
		      __func__, cpath, *csize, *content);
651
	}
653
	}
652
	return fstatus;
654
	return fstatus;
653
}
655
}
654
- 
655
request
656
request
656
--
657
src/slurmd/slurmstepd/req.c | 8 +++++++-
657
src/slurmd/slurmstepd/req.c | 8 +++++++-
658
1 file changed, 7 insertions(+), 1 deletion(-)
658
1 file changed, 7 insertions(+), 1 deletion(-)
(-)a/src/slurmd/slurmstepd/req.c (-2 / +7 lines)
Lines 1298-1303 static void *_wait_extern_pid(void *args) Link Here
1298
1298
1299
static int _handle_add_extern_pid_internal(stepd_step_rec_t *job, pid_t pid)
1299
static int _handle_add_extern_pid_internal(stepd_step_rec_t *job, pid_t pid)
1300
{
1300
{
1301
	/* start at 1 as slurmstepd will take task 0 */
1302
	static uint32_t taskid = 1;
1303
	/* mutex to protect taskid as this function is threaded */
1304
	static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
1301
	extern_pid_t *extern_pid;
1305
	extern_pid_t *extern_pid;
1302
	jobacct_id_t jobacct_id;
1306
	jobacct_id_t jobacct_id;
1303
1307
Lines 1317-1323 static int _handle_add_extern_pid_internal(stepd_step_rec_t *job, pid_t pid) Link Here
1317
	/* track pid: add outside of the below thread so that the pam module
1321
	/* track pid: add outside of the below thread so that the pam module
1318
	 * waits until the parent pid is added, before letting the parent spawn
1322
	 * waits until the parent pid is added, before letting the parent spawn
1319
	 * any children. */
1323
	 * any children. */
1320
	jobacct_id.taskid = job->nodeid; /* Treat node ID as global task ID */
1324
	slurm_mutex_lock(&mutex);
1325
	jobacct_id.taskid = taskid++; /* give unique task id per external PID tree */
1326
	slurm_mutex_unlock(&mutex);
1321
	jobacct_id.nodeid = job->nodeid;
1327
	jobacct_id.nodeid = job->nodeid;
1322
	jobacct_id.job = job;
1328
	jobacct_id.job = job;
1323
1329
1324
- 

Return to ticket 8656