summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2012-03-29 12:48:15 +0200
committerIngo Molnar <mingo@kernel.org>2012-03-29 12:48:22 +0200
commit1f56ee7b68fecd45d25bdcf2eda7507797594424 (patch)
tree782ec71491cdfb0ce5d5117428be6c3af7070207
parentsched: Fix __schedule_bug() output when called from an interrupt (diff)
parentsched/arch: Introduce the finish_arch_post_lock_switch() scheduler callback (diff)
downloadlinux-1f56ee7b68fecd45d25bdcf2eda7507797594424.tar.xz
linux-1f56ee7b68fecd45d25bdcf2eda7507797594424.zip
Merge branch 'sched/arch' into sched/urgent
Merge reason: It has not gone upstream via the ARM tree, merge it via the scheduler tree. Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--kernel/sched/core.c1
-rw-r--r--kernel/sched/sched.h3
2 files changed, 4 insertions, 0 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 929fd857ef88..985f6e595154 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -1962,6 +1962,7 @@ static void finish_task_switch(struct rq *rq, struct task_struct *prev)
local_irq_enable();
#endif /* __ARCH_WANT_INTERRUPTS_ON_CTXSW */
finish_lock_switch(rq, prev);
+ finish_arch_post_lock_switch();
fire_sched_in_preempt_notifiers(current);
if (mm)
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
index 753bdd567416..2f7a723adcb3 100644
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
@@ -681,6 +681,9 @@ static inline int task_running(struct rq *rq, struct task_struct *p)
#ifndef finish_arch_switch
# define finish_arch_switch(prev) do { } while (0)
#endif
+#ifndef finish_arch_post_lock_switch
+# define finish_arch_post_lock_switch() do { } while (0)
+#endif
#ifndef __ARCH_WANT_UNLOCKED_CTXSW
static inline void prepare_lock_switch(struct rq *rq, struct task_struct *next)