From 83b61e4deb9ad58bd9405192446a8b0be6134683 Mon Sep 17 00:00:00 2001 From: Paul Mundt Date: Fri, 28 Sep 2007 15:48:06 +0900 Subject: [PATCH] --- yaml --- r: 68293 b: refs/heads/master c: 995bb781d42441ed48517bc7ea6414c3df3386ef h: refs/heads/master i: 68291: 6efeb1d5a1d9317e57037cd222e439b5ff67f947 v: v3 --- [refs] | 2 +- trunk/arch/sh/kernel/process.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 969cdaa310b8..4cf2acd6cb17 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e5137682a1ad48bc5306070935c277e262f119ef +refs/heads/master: 995bb781d42441ed48517bc7ea6414c3df3386ef diff --git a/trunk/arch/sh/kernel/process.c b/trunk/arch/sh/kernel/process.c index 15ae322dbd74..cd8dae16e940 100644 --- a/trunk/arch/sh/kernel/process.c +++ b/trunk/arch/sh/kernel/process.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -351,10 +352,9 @@ struct task_struct *__switch_to(struct task_struct *prev, #ifdef CONFIG_PREEMPT { - unsigned long flags; struct pt_regs *regs; - local_irq_save(flags); + preempt_disable(); regs = task_pt_regs(prev); if (user_mode(regs) && regs->regs[15] >= 0xc0000000) { int offset = (int)regs->regs[15]; @@ -365,7 +365,7 @@ struct task_struct *__switch_to(struct task_struct *prev, /* Go to rewind point */ regs->pc = regs->regs[0] + offset; } - local_irq_restore(flags); + preempt_enable_no_resched(); } #endif