From e167a529a3bc14175fc3aabeab8a48f398868508 Mon Sep 17 00:00:00 2001 From: Moe Jette <jette1@llnl.gov> Date: Fri, 20 Sep 2002 23:06:11 +0000 Subject: [PATCH] Added flag to job submit RPC: Kill on node failure, also new node state. --- src/common/slurm_protocol_defs.c | 2 ++ src/common/slurm_protocol_defs.h | 3 +++ src/common/slurm_protocol_pack.c | 2 ++ 3 files changed, 7 insertions(+) diff --git a/src/common/slurm_protocol_defs.c b/src/common/slurm_protocol_defs.c index 43e6147e8d5..968a32b3332 100644 --- a/src/common/slurm_protocol_defs.c +++ b/src/common/slurm_protocol_defs.c @@ -483,6 +483,8 @@ void slurm_init_job_desc_msg(job_desc_msg_t * job_desc_msg) { job_desc_msg->contiguous = (uint16_t) SLURM_JOB_DESC_DEFAULT_CONTIGUOUS; + job_desc_msg->kill_on_node_fail = + (uint16_t) SLURM_JOB_DESC_DEFAULT_KILL_NODE_FAIL; job_desc_msg->environment = SLURM_JOB_DESC_DEFAULT_ENVIRONMENT; job_desc_msg->env_size = SLURM_JOB_DESC_DEFAULT_ENV_SIZE; job_desc_msg->features = SLURM_JOB_DESC_DEFAULT_FEATURES; diff --git a/src/common/slurm_protocol_defs.h b/src/common/slurm_protocol_defs.h index 869dfe3fdec..303aa60ef80 100644 --- a/src/common/slurm_protocol_defs.h +++ b/src/common/slurm_protocol_defs.h @@ -246,6 +246,8 @@ typedef struct job_step_specs { typedef struct job_descriptor { /* Job descriptor for submit, allocate, and update requests */ uint16_t contiguous; /* 1 if job requires contiguous nodes, 0 otherwise, * default=0 */ + uint16_t kill_on_node_fail; /* 1 if node failure to kill job, 0 otherwise, + * default=1 */ char **environment; /* environment variables to set for job, * name=value pairs, one per line */ uint16_t env_size; /* element count in environment */ @@ -609,6 +611,7 @@ extern char *node_state_string(enum node_states inx); extern char *node_state_string_compact(enum node_states inx); #define SLURM_JOB_DESC_DEFAULT_CONTIGUOUS NO_VAL +#define SLURM_JOB_DESC_DEFAULT_KILL_NODE_FAIL NO_VAL #define SLURM_JOB_DESC_DEFAULT_ENVIRONMENT ((char **) NULL) #define SLURM_JOB_DESC_DEFAULT_ENV_SIZE 0 #define SLURM_JOB_DESC_DEFAULT_FEATURES NULL diff --git a/src/common/slurm_protocol_pack.c b/src/common/slurm_protocol_pack.c index 7bcdace110d..e234a99206f 100644 --- a/src/common/slurm_protocol_pack.c +++ b/src/common/slurm_protocol_pack.c @@ -1141,6 +1141,7 @@ void pack_job_desc ( job_desc_msg_t * job_desc_ptr, void ** buf_ptr , int * buff /* unpack timestamp of snapshot */ pack16 (job_desc_ptr->contiguous, buf_ptr, buffer_size); + pack16 (job_desc_ptr->kill_on_node_fail, buf_ptr, buffer_size); packstr (job_desc_ptr->features, buf_ptr, buffer_size); pack32 (job_desc_ptr->job_id, buf_ptr, buffer_size); packstr (job_desc_ptr->name, buf_ptr, buffer_size); @@ -1193,6 +1194,7 @@ int unpack_job_desc ( job_desc_msg_t **job_desc_buffer_ptr, void ** buf_ptr , in /* unpack timestamp of snapshot */ unpack16 (&job_desc_ptr->contiguous, buf_ptr, buffer_size); + unpack16 (&job_desc_ptr->kill_on_node_fail, buf_ptr, buffer_size); unpackstr_xmalloc (&job_desc_ptr->features, &uint16_tmp, buf_ptr, buffer_size); unpack32 (&job_desc_ptr->job_id, buf_ptr, buffer_size); unpackstr_xmalloc (&job_desc_ptr->name, &uint16_tmp, buf_ptr, buffer_size); -- GitLab