diff options
Diffstat (limited to 'litmus/preempt.c')
-rw-r--r-- | litmus/preempt.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/litmus/preempt.c b/litmus/preempt.c index 5704d0bf4c0b..6be2f26728b8 100644 --- a/litmus/preempt.c +++ b/litmus/preempt.c | |||
@@ -2,6 +2,7 @@ | |||
2 | 2 | ||
3 | #include <litmus/litmus.h> | 3 | #include <litmus/litmus.h> |
4 | #include <litmus/preempt.h> | 4 | #include <litmus/preempt.h> |
5 | #include <litmus/trace.h> | ||
5 | 6 | ||
6 | /* The rescheduling state of each processor. | 7 | /* The rescheduling state of each processor. |
7 | */ | 8 | */ |
@@ -47,6 +48,7 @@ void sched_state_ipi(void) | |||
47 | set_tsk_need_resched(current); | 48 | set_tsk_need_resched(current); |
48 | TRACE_STATE("IPI -> set_tsk_need_resched(%s/%d)\n", | 49 | TRACE_STATE("IPI -> set_tsk_need_resched(%s/%d)\n", |
49 | current->comm, current->pid); | 50 | current->comm, current->pid); |
51 | TS_SEND_RESCHED_END; | ||
50 | } else { | 52 | } else { |
51 | /* ignore */ | 53 | /* ignore */ |
52 | TRACE_STATE("ignoring IPI in state %x (%s)\n", | 54 | TRACE_STATE("ignoring IPI in state %x (%s)\n", |
@@ -85,8 +87,10 @@ void litmus_reschedule(int cpu) | |||
85 | if (scheduled_transition_ok) { | 87 | if (scheduled_transition_ok) { |
86 | if (smp_processor_id() == cpu) | 88 | if (smp_processor_id() == cpu) |
87 | set_tsk_need_resched(current); | 89 | set_tsk_need_resched(current); |
88 | else | 90 | else { |
91 | TS_SEND_RESCHED_START(cpu); | ||
89 | smp_send_reschedule(cpu); | 92 | smp_send_reschedule(cpu); |
93 | } | ||
90 | } | 94 | } |
91 | 95 | ||
92 | TRACE_STATE("%s picked-ok:%d sched-ok:%d\n", | 96 | TRACE_STATE("%s picked-ok:%d sched-ok:%d\n", |