sched, sh: Fold finish_arch_switch() into switch_to()
The code looks buggy; why would we be restoring the previous task's DSP state after we've switched to the next task? Fix that and put the restore in switch_to(), removing the need for finish_arch_switch(). Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mike Galbraith <efault@gmx.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-kernel@vger.kernel.org Cc: michael@amarulasolutions.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
08960e3448
commit
b31fdac2a9
|
@ -78,6 +78,8 @@ do { \
|
|||
\
|
||||
if (is_dsp_enabled(prev)) \
|
||||
__save_dsp(prev); \
|
||||
if (is_dsp_enabled(next)) \
|
||||
__restore_dsp(next); \
|
||||
\
|
||||
__ts1 = (u32 *)&prev->thread.sp; \
|
||||
__ts2 = (u32 *)&prev->thread.pc; \
|
||||
|
@ -125,10 +127,4 @@ do { \
|
|||
last = __last; \
|
||||
} while (0)
|
||||
|
||||
#define finish_arch_switch(prev) \
|
||||
do { \
|
||||
if (is_dsp_enabled(prev)) \
|
||||
__restore_dsp(prev); \
|
||||
} while (0)
|
||||
|
||||
#endif /* __ASM_SH_SWITCH_TO_32_H */
|
||||
|
|
Loading…
Reference in New Issue