diff --git a/checkin_notes b/checkin_notes index 576d22a840..1e09046365 100644 --- a/checkin_notes +++ b/checkin_notes @@ -3455,3 +3455,10 @@ Rom 23 Apr 2012 client/ coproc_detect.cpp + +David 23 Apr 2012 + - client: fix bug that caused a project's jobs to all be run EDF + if the project has the flag set. + + client/ + cpu_sched.cpp diff --git a/client/cpu_sched.cpp b/client/cpu_sched.cpp index b72ca9b20c..f3c06f3e11 100644 --- a/client/cpu_sched.cpp +++ b/client/cpu_sched.cpp @@ -468,9 +468,11 @@ static RESULT* earliest_deadline_result(int rsc_type) { if (rp->non_cpu_intensive()) continue; PROJECT* p = rp->project; - // treat projects with DCF>90 as if they had deadline misses + // Skip this job if the project's deadline-miss count is zero. + // If the project's DCF is > 90 (and we're not ignoring it) + // treat all jobs as deadline misses // - if (!p->dont_use_dcf && p->duration_correction_factor < 90.0) { + if (p->dont_use_dcf || p->duration_correction_factor < 90.0) { if (p->rsc_pwf[rsc_type].deadlines_missed_copy <= 0) { continue; }