diff options
Diffstat (limited to 'litmus')
-rw-r--r-- | litmus/sched_gsn_edf.c | 6 | ||||
-rw-r--r-- | litmus/sched_litmus.c | 3 |
2 files changed, 6 insertions, 3 deletions
diff --git a/litmus/sched_gsn_edf.c b/litmus/sched_gsn_edf.c index dffea128739f..9debea981419 100644 --- a/litmus/sched_gsn_edf.c +++ b/litmus/sched_gsn_edf.c | |||
@@ -266,8 +266,8 @@ static void check_for_preemptions(void) | |||
266 | last = lowest_prio_cpu()) { | 266 | last = lowest_prio_cpu()) { |
267 | /* preemption necessary */ | 267 | /* preemption necessary */ |
268 | task = __take_ready(&gsnedf); | 268 | task = __take_ready(&gsnedf); |
269 | TRACE("check_for_preemptions: attempting to link task %d to %d\n", | 269 | TRACE_TASK(task, "attempting to link to P%d\n", |
270 | task->pid, last->cpu); | 270 | last->cpu); |
271 | if (last->linked) | 271 | if (last->linked) |
272 | requeue(last->linked); | 272 | requeue(last->linked); |
273 | link_task_to_cpu(task, last); | 273 | link_task_to_cpu(task, last); |
@@ -409,7 +409,7 @@ static struct task_struct* gsnedf_schedule(struct task_struct * prev) | |||
409 | "state:%d sig:%d\n", | 409 | "state:%d sig:%d\n", |
410 | blocks, out_of_time, np, sleep, preempt, | 410 | blocks, out_of_time, np, sleep, preempt, |
411 | prev->state, signal_pending(prev)); | 411 | prev->state, signal_pending(prev)); |
412 | if (entry->linked && preempt) | 412 | if (entry->linked && preempt && !np) |
413 | TRACE_TASK(prev, "will be preempted by %s/%d\n", | 413 | TRACE_TASK(prev, "will be preempted by %s/%d\n", |
414 | entry->linked->comm, entry->linked->pid); | 414 | entry->linked->comm, entry->linked->pid); |
415 | 415 | ||
diff --git a/litmus/sched_litmus.c b/litmus/sched_litmus.c index 0687be0c8a78..faf2312b762e 100644 --- a/litmus/sched_litmus.c +++ b/litmus/sched_litmus.c | |||
@@ -197,6 +197,9 @@ static void yield_task_litmus(struct rq *rq) | |||
197 | TS_SYSCALL_IN_START; | 197 | TS_SYSCALL_IN_START; |
198 | 198 | ||
199 | TS_SYSCALL_OUT_END; | 199 | TS_SYSCALL_OUT_END; |
200 | |||
201 | TRACE_CUR("yields\n"); | ||
202 | |||
200 | BUG_ON(rq->curr != current); | 203 | BUG_ON(rq->curr != current); |
201 | /* sched_yield() is called to trigger delayed preemptions. | 204 | /* sched_yield() is called to trigger delayed preemptions. |
202 | * Thus, mark the current task as needing to be rescheduled. | 205 | * Thus, mark the current task as needing to be rescheduled. |