diff options
Diffstat (limited to 'litmus/sched_cedf.c')
-rw-r--r-- | litmus/sched_cedf.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/litmus/sched_cedf.c b/litmus/sched_cedf.c index 0707059597d6..690b94dbd686 100644 --- a/litmus/sched_cedf.c +++ b/litmus/sched_cedf.c | |||
@@ -263,11 +263,17 @@ static noinline void requeue(struct task_struct* task) | |||
263 | 263 | ||
264 | #ifdef CONFIG_SCHED_CPU_AFFINITY | 264 | #ifdef CONFIG_SCHED_CPU_AFFINITY |
265 | static cpu_entry_t* cedf_get_nearest_available_cpu( | 265 | static cpu_entry_t* cedf_get_nearest_available_cpu( |
266 | cedf_domain_t *cluster, cpu_entry_t* start) | 266 | cedf_domain_t *cluster, cpu_entry_t *start) |
267 | { | 267 | { |
268 | cpu_entry_t* affinity; | 268 | cpu_entry_t *affinity; |
269 | 269 | ||
270 | get_nearest_available_cpu(affinity, start, cedf_cpu_entries, -1); | 270 | get_nearest_available_cpu(affinity, start, cedf_cpu_entries, |
271 | #ifdef CONFIG_RELEASE_MASTER | ||
272 | cluster->domain.release_master | ||
273 | #else | ||
274 | NO_CPU | ||
275 | #endif | ||
276 | ); | ||
271 | 277 | ||
272 | /* make sure CPU is in our cluster */ | 278 | /* make sure CPU is in our cluster */ |
273 | if (affinity && cpu_isset(affinity->cpu, *cluster->cpu_map)) | 279 | if (affinity && cpu_isset(affinity->cpu, *cluster->cpu_map)) |
@@ -282,7 +288,7 @@ static cpu_entry_t* cedf_get_nearest_available_cpu( | |||
282 | static void check_for_preemptions(cedf_domain_t *cluster) | 288 | static void check_for_preemptions(cedf_domain_t *cluster) |
283 | { | 289 | { |
284 | struct task_struct *task; | 290 | struct task_struct *task; |
285 | cpu_entry_t* last; | 291 | cpu_entry_t *last; |
286 | 292 | ||
287 | for(last = lowest_prio_cpu(cluster); | 293 | for(last = lowest_prio_cpu(cluster); |
288 | edf_preemption_needed(&cluster->domain, last->linked); | 294 | edf_preemption_needed(&cluster->domain, last->linked); |
@@ -293,7 +299,7 @@ static void check_for_preemptions(cedf_domain_t *cluster) | |||
293 | task->pid, last->cpu); | 299 | task->pid, last->cpu); |
294 | #ifdef CONFIG_SCHED_CPU_AFFINITY | 300 | #ifdef CONFIG_SCHED_CPU_AFFINITY |
295 | { | 301 | { |
296 | cpu_entry_t* affinity = | 302 | cpu_entry_t *affinity = |
297 | cedf_get_nearest_available_cpu(cluster, | 303 | cedf_get_nearest_available_cpu(cluster, |
298 | &per_cpu(cedf_cpu_entries, task_cpu(task))); | 304 | &per_cpu(cedf_cpu_entries, task_cpu(task))); |
299 | if(affinity) | 305 | if(affinity) |