diff options
Diffstat (limited to 'kernel/sched_psn_edf.c')
-rw-r--r-- | kernel/sched_psn_edf.c | 29 |
1 files changed, 0 insertions, 29 deletions
diff --git a/kernel/sched_psn_edf.c b/kernel/sched_psn_edf.c index 32f9b23829..9e4f4abd52 100644 --- a/kernel/sched_psn_edf.c +++ b/kernel/sched_psn_edf.c | |||
@@ -301,39 +301,11 @@ static void psnedf_wake_up_task(struct task_struct *task) | |||
301 | TRACE("psnedf: %d unsuspends with budget=%d\n", | 301 | TRACE("psnedf: %d unsuspends with budget=%d\n", |
302 | task->pid, task->time_slice); | 302 | task->pid, task->time_slice); |
303 | 303 | ||
304 | |||
305 | /* After fixing the litmus_controlled bug, | 304 | /* After fixing the litmus_controlled bug, |
306 | * this should hold again. | 305 | * this should hold again. |
307 | */ | 306 | */ |
308 | BUG_ON(in_list(&task->rt_list)); | 307 | BUG_ON(in_list(&task->rt_list)); |
309 | 308 | ||
310 | /* FIXME: | ||
311 | * There exists a race between this function, suspensions due to IO, | ||
312 | * and switching in and out of real-time mode. For some reason, the | ||
313 | * BUG_ON triggered after a task system warm-up phase. | ||
314 | * | ||
315 | * BUG_ON(in_list(&task->rt_list)); | ||
316 | * | ||
317 | * Replaced by an if to gather more information. | ||
318 | */ | ||
319 | /* | ||
320 | if (unlikely(in_list(&task->rt_list))) { | ||
321 | TRACE(KERN_CRIT "wake_up_task: Why is %s/%d in rt list? " | ||
322 | "state=%ld next=%p prev=%p flags=0x%8lx mode=%d " | ||
323 | "partition=%d cpu=%d deadline=%ld now=%ld release=%ld" | ||
324 | "rtflags=%d timeslice=%d job=%u knp=%d", | ||
325 | task->comm, task->pid, | ||
326 | task->state, task->rt_list.next, task->rt_list.prev, | ||
327 | task->flags, get_rt_mode(), | ||
328 | get_partition(task), smp_processor_id(), | ||
329 | get_deadline(task), jiffies, get_release(task), | ||
330 | get_rt_flags(task), task->time_slice, | ||
331 | task->rt_param.times.job_no, task->rt_param.kernel_np); | ||
332 | task->state = TASK_RUNNING; | ||
333 | return; | ||
334 | } | ||
335 | */ | ||
336 | |||
337 | task->state = TASK_RUNNING; | 309 | task->state = TASK_RUNNING; |
338 | 310 | ||
339 | /* We need to take suspensions because of semaphores into | 311 | /* We need to take suspensions because of semaphores into |
@@ -520,7 +492,6 @@ static sched_plugin_t s_plugin __cacheline_aligned_in_smp = { | |||
520 | .prepare_task = psnedf_prepare_task,\ | 492 | .prepare_task = psnedf_prepare_task,\ |
521 | .sleep_next_period = edf_sleep_next_period,\ | 493 | .sleep_next_period = edf_sleep_next_period,\ |
522 | .tear_down = psnedf_tear_down,\ | 494 | .tear_down = psnedf_tear_down,\ |
523 | .shutdown_hook = NULL,\ | ||
524 | .schedule = psnedf_schedule,\ | 495 | .schedule = psnedf_schedule,\ |
525 | .mode_change = psnedf_mode_change,\ | 496 | .mode_change = psnedf_mode_change,\ |
526 | .wake_up_task = psnedf_wake_up_task,\ | 497 | .wake_up_task = psnedf_wake_up_task,\ |