aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel
diff options
context:
space:
mode:
authorGlenn <gelliott@bonham.cs.unc.edu>2010-11-16 15:41:21 -0500
committerGlenn <gelliott@bonham.cs.unc.edu>2010-11-16 15:41:21 -0500
commit1b9caf2f95c97e27c91372bd41f79d3e96a99e62 (patch)
treea02ed0f31998ede99372964549e00216f0733e57 /arch/x86/kernel
parent9a4b9c5c9b2af2f69e7eb6d69893a767701b781b (diff)
parent1726017e944d0086f14f867befbf5ebf07adc7dd (diff)
Merge branch 'wip-merge-2.6.36' of ssh://cvs.cs.unc.edu/cvs/proj/litmus/repo/litmus2010 into wip-merge-2.6.36
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r--arch/x86/kernel/smp.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c
index 97af589a5c0c..74cca6014c0e 100644
--- a/arch/x86/kernel/smp.c
+++ b/arch/x86/kernel/smp.c
@@ -23,7 +23,8 @@
23#include <linux/cpu.h> 23#include <linux/cpu.h>
24#include <linux/gfp.h> 24#include <linux/gfp.h>
25 25
26#include <litmus/litmus.h> 26#include <litmus/preempt.h>
27#include <litmus/debug_trace.h>
27#include <litmus/trace.h> 28#include <litmus/trace.h>
28 29
29#include <asm/mtrr.h> 30#include <asm/mtrr.h>
@@ -212,10 +213,8 @@ static void native_smp_send_stop(void)
212void smp_reschedule_interrupt(struct pt_regs *regs) 213void smp_reschedule_interrupt(struct pt_regs *regs)
213{ 214{
214 ack_APIC_irq(); 215 ack_APIC_irq();
215 /* LITMUS^RT needs this interrupt to proper reschedule 216 /* LITMUS^RT: this IPI might need to trigger the sched state machine. */
216 * on this cpu 217 sched_state_ipi();
217 */
218 set_tsk_need_resched(current);
219 inc_irq_stat(irq_resched_count); 218 inc_irq_stat(irq_resched_count);
220 TS_SEND_RESCHED_END; 219 TS_SEND_RESCHED_END;
221 /* 220 /*