aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-sparc64/mmu_context.h
diff options
context:
space:
mode:
authorDavid S. Miller <davem@sunset.davemloft.net>2006-02-09 17:21:53 -0800
committerDavid S. Miller <davem@sunset.davemloft.net>2006-03-20 01:12:06 -0800
commit618e9ed98aed924a1fc664eb6522db4a5e927043 (patch)
tree08ace6185b8f9709cb22a23d329def1dae622666 /include/asm-sparc64/mmu_context.h
parent[SPARC64]: Implement sun4v TSB miss handlers. (diff)
downloadlinux-dev-618e9ed98aed924a1fc664eb6522db4a5e927043.tar.xz
linux-dev-618e9ed98aed924a1fc664eb6522db4a5e927043.zip
[SPARC64]: Hypervisor TSB context switching.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/asm-sparc64/mmu_context.h')
-rw-r--r--include/asm-sparc64/mmu_context.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/asm-sparc64/mmu_context.h b/include/asm-sparc64/mmu_context.h
index 2760353591ab..eb660b1609c4 100644
--- a/include/asm-sparc64/mmu_context.h
+++ b/include/asm-sparc64/mmu_context.h
@@ -22,14 +22,18 @@ extern void get_new_mmu_context(struct mm_struct *mm);
extern int init_new_context(struct task_struct *tsk, struct mm_struct *mm);
extern void destroy_context(struct mm_struct *mm);
-extern void __tsb_context_switch(unsigned long pgd_pa, unsigned long tsb_reg,
- unsigned long tsb_vaddr, unsigned long tsb_pte);
+extern void __tsb_context_switch(unsigned long pgd_pa,
+ unsigned long tsb_reg,
+ unsigned long tsb_vaddr,
+ unsigned long tsb_pte,
+ unsigned long tsb_descr_pa);
static inline void tsb_context_switch(struct mm_struct *mm)
{
__tsb_context_switch(__pa(mm->pgd), mm->context.tsb_reg_val,
mm->context.tsb_map_vaddr,
- mm->context.tsb_map_pte);
+ mm->context.tsb_map_pte,
+ __pa(&mm->context.tsb_descr));
}
extern void tsb_grow(struct mm_struct *mm, unsigned long mm_rss, gfp_t gfp_flags);