aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile/include/asm/switch_to.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/tile/include/asm/switch_to.h')
-rw-r--r--arch/tile/include/asm/switch_to.h10
1 files changed, 3 insertions, 7 deletions
diff --git a/arch/tile/include/asm/switch_to.h b/arch/tile/include/asm/switch_to.h
index b8f888cbe6b0..422842a56a3d 100644
--- a/arch/tile/include/asm/switch_to.h
+++ b/arch/tile/include/asm/switch_to.h
@@ -53,15 +53,11 @@ extern unsigned long get_switch_to_pc(void);
53 * Kernel threads can check to see if they need to migrate their 53 * Kernel threads can check to see if they need to migrate their
54 * stack whenever they return from a context switch; for user 54 * stack whenever they return from a context switch; for user
55 * threads, we defer until they are returning to user-space. 55 * threads, we defer until they are returning to user-space.
56 * We defer homecache migration until the runqueue lock is released.
56 */ 57 */
57#define finish_arch_switch(prev) do { \ 58#define finish_arch_post_lock_switch() do { \
58 if (unlikely((prev)->state == TASK_DEAD)) \
59 __insn_mtspr(SPR_SIM_CONTROL, SIM_CONTROL_OS_EXIT | \
60 ((prev)->pid << _SIM_CONTROL_OPERATOR_BITS)); \
61 __insn_mtspr(SPR_SIM_CONTROL, SIM_CONTROL_OS_SWITCH | \
62 (current->pid << _SIM_CONTROL_OPERATOR_BITS)); \
63 if (current->mm == NULL && !kstack_hash && \ 59 if (current->mm == NULL && !kstack_hash && \
64 current_thread_info()->homecache_cpu != smp_processor_id()) \ 60 current_thread_info()->homecache_cpu != raw_smp_processor_id()) \
65 homecache_migrate_kthread(); \ 61 homecache_migrate_kthread(); \
66} while (0) 62} while (0)
67 63