diff --git a/src/slurmctld/job_mgr.c b/src/slurmctld/job_mgr.c index 2a9b5fbe2b66f69570e4f926c4d6df0758a029a9..e8a22e119b722034a7f908b737bac566ef230db0 100644 --- a/src/slurmctld/job_mgr.c +++ b/src/slurmctld/job_mgr.c @@ -2578,18 +2578,12 @@ _copy_job_desc_to_job_record(job_desc_msg_t * job_desc, wiki_sched_test = true; } if (wiki_sched && strstr(job_ptr->comment, "QOS:")) { - if (strstr(job_ptr->comment, "QOS:execmptall")) - job_ptr->qos = QOS_EXEMPT_ALL; - else if (strstr(job_ptr->comment, "QOS:execmptwclimit")) - job_ptr->qos = QOS_EXEMPT_WC_LIMIT; - else if (strstr(job_ptr->comment, "QOS:expedite")) + if (strstr(job_ptr->comment, "FLAGS:PREEMPTOR")) job_ptr->qos = QOS_EXPEDITE; - else if (strstr(job_ptr->comment, "QOS:normal")) - job_ptr->qos = QOS_NORMAL; - else if (strstr(job_ptr->comment, "QOS:standby")) + else if (strstr(job_ptr->comment, "FLAGS:PREEMPTEE")) job_ptr->qos = QOS_STANDBY; else - job_ptr->qos = QOS_DEFAULT; + job_ptr->qos = QOS_NORMAL; } if (job_desc->priority != NO_VAL) /* already confirmed submit_uid==0 */ job_ptr->priority = job_desc->priority; @@ -3860,18 +3854,12 @@ int update_job(job_desc_msg_t * job_specs, uid_t uid) job_ptr->comment, job_specs->job_id); if (wiki_sched && strstr(job_ptr->comment, "QOS:")) { - if (strstr(job_ptr->comment, "QOS:execmptall")) - job_ptr->qos = QOS_EXEMPT_ALL; - else if (strstr(job_ptr->comment, "QOS:execmptwclimit")) - job_ptr->qos = QOS_EXEMPT_WC_LIMIT; - else if (strstr(job_ptr->comment, "QOS:expedite")) + if (strstr(job_ptr->comment, "FLAGS:PREEMPTOR")) job_ptr->qos = QOS_EXPEDITE; - else if (strstr(job_ptr->comment, "QOS:normal")) - job_ptr->qos = QOS_NORMAL; - else if (strstr(job_ptr->comment, "QOS:standby")) + else if (strstr(job_ptr->comment, "FLAGS:PREEMPTEE")) job_ptr->qos = QOS_STANDBY; else - job_ptr->qos = QOS_DEFAULT; + job_ptr->qos = QOS_NORMAL; } } diff --git a/src/slurmctld/slurmctld.h b/src/slurmctld/slurmctld.h index 99db1b91b27a5a7a852ad91bffd997cd33addc7c..4fb0d3794d362b245f0117977f21b8131e1ce441 100644 --- a/src/slurmctld/slurmctld.h +++ b/src/slurmctld/slurmctld.h @@ -276,15 +276,11 @@ extern time_t last_job_update; /* time of last update to part records */ /* Used for Moab * These QOS values only apply to LLNL's configuration - * Other values may apply at other sites */ -typedef enum { - QOS_DEFAULT = 0, /* if none set */ - QOS_EXEMPT_ALL, - QOS_EXEMPT_WC_LIMIT, - QOS_EXPEDITE, - QOS_NORMAL, - QOS_STANDBY -} job_qos_t; + * Other values may apply at other sites, + * These may be mapped to partition priorities in the future */ +#define QOS_EXPEDITE 300 +#define QOS_NORMAL 200 +#define QOS_STANDBY 100 #define DETAILS_MAGIC 0xdea84e7 #define JOB_MAGIC 0xf0b7392c