diff options
author | Brian Gerst <brgerst@gmail.com> | 2009-01-19 00:38:57 +0900 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2009-01-19 00:38:57 +0900 |
commit | 9eb912d1aa6b8106e06a73ea6702ec3dab0d6a1a (patch) | |
tree | ed563ea82e5190894806c62d87a769400b08375a /arch/x86/include/asm/tlbflush.h | |
parent | 1b437c8c73a36daa471dd54a63c426d72af5723d (diff) | |
download | op-kernel-dev-9eb912d1aa6b8106e06a73ea6702ec3dab0d6a1a.zip op-kernel-dev-9eb912d1aa6b8106e06a73ea6702ec3dab0d6a1a.tar.gz |
x86-64: Move TLB state from PDA to per-cpu and consolidate with 32-bit.
Signed-off-by: Brian Gerst <brgerst@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'arch/x86/include/asm/tlbflush.h')
-rw-r--r-- | arch/x86/include/asm/tlbflush.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h index 17feaa9..d3539f9 100644 --- a/arch/x86/include/asm/tlbflush.h +++ b/arch/x86/include/asm/tlbflush.h @@ -148,20 +148,17 @@ void native_flush_tlb_others(const struct cpumask *cpumask, #define TLBSTATE_OK 1 #define TLBSTATE_LAZY 2 -#ifdef CONFIG_X86_32 struct tlb_state { struct mm_struct *active_mm; int state; - char __cacheline_padding[L1_CACHE_BYTES-8]; }; DECLARE_PER_CPU(struct tlb_state, cpu_tlbstate); -void reset_lazy_tlbstate(void); -#else static inline void reset_lazy_tlbstate(void) { + percpu_write(cpu_tlbstate.state, 0); + percpu_write(cpu_tlbstate.active_mm, &init_mm); } -#endif #endif /* SMP */ |