|
@@ -10,7 +10,9 @@
|
|
|
* CPU.
|
|
|
*/
|
|
|
#if defined(CONFIG_PREEMPT) && defined(CONFIG_SMP) && defined(CONFIG_CPU_V7)
|
|
|
-#define finish_arch_switch(prev) dsb(ish)
|
|
|
+#define __complete_pending_tlbi() dsb(ish)
|
|
|
+#else
|
|
|
+#define __complete_pending_tlbi()
|
|
|
#endif
|
|
|
|
|
|
/*
|
|
@@ -22,6 +24,7 @@ extern struct task_struct *__switch_to(struct task_struct *, struct thread_info
|
|
|
|
|
|
#define switch_to(prev,next,last) \
|
|
|
do { \
|
|
|
+ __complete_pending_tlbi(); \
|
|
|
last = __switch_to(prev,task_thread_info(prev), task_thread_info(next)); \
|
|
|
} while (0)
|
|
|
|