Commit 43064431 authored by Paul Mackerras's avatar Paul Mackerras

powerpc: Remove unused paca->pgdir field

The pgdir field in the paca was a leftover from the dynamic VSIDs
patch, and is not used in the current kernel code.  This removes it.
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 7a0c58d0
...@@ -122,9 +122,6 @@ int main(void) ...@@ -122,9 +122,6 @@ int main(void)
DEFINE(PACASLBCACHE, offsetof(struct paca_struct, slb_cache)); DEFINE(PACASLBCACHE, offsetof(struct paca_struct, slb_cache));
DEFINE(PACASLBCACHEPTR, offsetof(struct paca_struct, slb_cache_ptr)); DEFINE(PACASLBCACHEPTR, offsetof(struct paca_struct, slb_cache_ptr));
DEFINE(PACACONTEXTID, offsetof(struct paca_struct, context.id)); DEFINE(PACACONTEXTID, offsetof(struct paca_struct, context.id));
#ifdef CONFIG_PPC_64K_PAGES
DEFINE(PACAPGDIR, offsetof(struct paca_struct, pgdir));
#endif
#ifdef CONFIG_HUGETLB_PAGE #ifdef CONFIG_HUGETLB_PAGE
DEFINE(PACALOWHTLBAREAS, offsetof(struct paca_struct, context.low_htlb_areas)); DEFINE(PACALOWHTLBAREAS, offsetof(struct paca_struct, context.low_htlb_areas));
DEFINE(PACAHIGHHTLBAREAS, offsetof(struct paca_struct, context.high_htlb_areas)); DEFINE(PACAHIGHHTLBAREAS, offsetof(struct paca_struct, context.high_htlb_areas));
......
...@@ -122,9 +122,6 @@ void switch_slb(struct task_struct *tsk, struct mm_struct *mm) ...@@ -122,9 +122,6 @@ void switch_slb(struct task_struct *tsk, struct mm_struct *mm)
get_paca()->slb_cache_ptr = 0; get_paca()->slb_cache_ptr = 0;
get_paca()->context = mm->context; get_paca()->context = mm->context;
#ifdef CONFIG_PPC_64K_PAGES
get_paca()->pgdir = mm->pgd;
#endif /* CONFIG_PPC_64K_PAGES */
/* /*
* preload some userspace segments into the SLB. * preload some userspace segments into the SLB.
......
...@@ -200,10 +200,6 @@ void switch_stab(struct task_struct *tsk, struct mm_struct *mm) ...@@ -200,10 +200,6 @@ void switch_stab(struct task_struct *tsk, struct mm_struct *mm)
__get_cpu_var(stab_cache_ptr) = 0; __get_cpu_var(stab_cache_ptr) = 0;
#ifdef CONFIG_PPC_64K_PAGES
get_paca()->pgdir = mm->pgd;
#endif /* CONFIG_PPC_64K_PAGES */
/* Now preload some entries for the new task */ /* Now preload some entries for the new task */
if (test_tsk_thread_flag(tsk, TIF_32BIT)) if (test_tsk_thread_flag(tsk, TIF_32BIT))
unmapped_base = TASK_UNMAPPED_BASE_USER32; unmapped_base = TASK_UNMAPPED_BASE_USER32;
......
...@@ -20,16 +20,9 @@ ...@@ -20,16 +20,9 @@
* 2 of the License, or (at your option) any later version. * 2 of the License, or (at your option) any later version.
*/ */
/*
* Getting into a kernel thread, there is no valid user segment, mark
* paca->pgdir NULL so that SLB miss on user addresses will fault
*/
static inline void enter_lazy_tlb(struct mm_struct *mm, static inline void enter_lazy_tlb(struct mm_struct *mm,
struct task_struct *tsk) struct task_struct *tsk)
{ {
#ifdef CONFIG_PPC_64K_PAGES
get_paca()->pgdir = NULL;
#endif /* CONFIG_PPC_64K_PAGES */
} }
#define NO_CONTEXT 0 #define NO_CONTEXT 0
...@@ -52,13 +45,8 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, ...@@ -52,13 +45,8 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next,
cpu_set(smp_processor_id(), next->cpu_vm_mask); cpu_set(smp_processor_id(), next->cpu_vm_mask);
/* No need to flush userspace segments if the mm doesnt change */ /* No need to flush userspace segments if the mm doesnt change */
#ifdef CONFIG_PPC_64K_PAGES
if (prev == next && get_paca()->pgdir == next->pgd)
return;
#else
if (prev == next) if (prev == next)
return; return;
#endif /* CONFIG_PPC_64K_PAGES */
#ifdef CONFIG_ALTIVEC #ifdef CONFIG_ALTIVEC
if (cpu_has_feature(CPU_FTR_ALTIVEC)) if (cpu_has_feature(CPU_FTR_ALTIVEC))
......
...@@ -79,9 +79,6 @@ struct paca_struct { ...@@ -79,9 +79,6 @@ struct paca_struct {
u64 exmc[10]; /* used for machine checks */ u64 exmc[10]; /* used for machine checks */
u64 exslb[10]; /* used for SLB/segment table misses u64 exslb[10]; /* used for SLB/segment table misses
* on the linear mapping */ * on the linear mapping */
#ifdef CONFIG_PPC_64K_PAGES
pgd_t *pgdir;
#endif /* CONFIG_PPC_64K_PAGES */
mm_context_t context; mm_context_t context;
u16 slb_cache[SLB_CACHE_ENTRIES]; u16 slb_cache[SLB_CACHE_ENTRIES];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment