diff --git a/src/srun/job.c b/src/srun/job.c index ddb3cbf185553c73fb171234a387046895010edc..f78c7e1debf9d2ab2e30a71e53e68ebe951d555f 100644 --- a/src/srun/job.c +++ b/src/srun/job.c @@ -171,6 +171,16 @@ update_job_state(job_t *job, job_state_t state) pthread_mutex_unlock(&job->state_mutex); } +job_state_t +job_state(job_t *job) +{ + job_state_t state; + slurm_mutex_lock(&job->state_mutex); + state = job->state; + slurm_mutex_unlock(&job->state_mutex); + return state; +} + void job_force_termination(job_t *job) diff --git a/src/srun/job.h b/src/srun/job.h index c47737516c165047287017c83722f708e4a220be..3a01f5acd1b5beaf59b7daad197fc06945bba3b7 100644 --- a/src/srun/job.h +++ b/src/srun/job.h @@ -145,6 +145,8 @@ typedef struct srun_job { void update_job_state(job_t *job, job_state_t newstate); void job_force_termination(job_t *job); +job_state_t job_state(job_t *job); + job_t * job_create_noalloc(void); job_t * job_create_allocation(resource_allocation_response_msg_t *resp);