xref: /linux/arch/sparc/include/asm/mmu_context_32.h (revision ca55b2fef3a9373fcfc30f82fd26bc7fccbda732)
1 #ifndef __SPARC_MMU_CONTEXT_H
2 #define __SPARC_MMU_CONTEXT_H
3 
4 #ifndef __ASSEMBLY__
5 
6 #include <asm-generic/mm_hooks.h>
7 
8 static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
9 {
10 }
11 
12 /* Initialize a new mmu context.  This is invoked when a new
13  * address space instance (unique or shared) is instantiated.
14  */
15 int init_new_context(struct task_struct *tsk, struct mm_struct *mm);
16 
17 /* Destroy a dead context.  This occurs when mmput drops the
18  * mm_users count to zero, the mmaps have been released, and
19  * all the page tables have been flushed.  Our job is to destroy
20  * any remaining processor-specific state.
21  */
22 void destroy_context(struct mm_struct *mm);
23 
24 /* Switch the current MM context. */
25 void switch_mm(struct mm_struct *old_mm, struct mm_struct *mm,
26 	       struct task_struct *tsk);
27 
28 #define deactivate_mm(tsk,mm)	do { } while (0)
29 
30 /* Activate a new MM instance for the current task. */
31 #define activate_mm(active_mm, mm) switch_mm((active_mm), (mm), NULL)
32 
33 #endif /* !(__ASSEMBLY__) */
34 
35 #endif /* !(__SPARC_MMU_CONTEXT_H) */
36