x86/mm: Remove reset_lazy_tlbstate()
authorAndy Lutomirski <luto@kernel.org>
Wed, 21 Jun 2017 05:22:09 +0000 (22:22 -0700)
committerIngo Molnar <mingo@kernel.org>
Thu, 22 Jun 2017 08:57:50 +0000 (10:57 +0200)
The only call site also calls idle_task_exit(), and idle_task_exit()
puts us into a clean state by explicitly switching to init_mm.

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Reviewed-by: Rik van Riel <riel@redhat.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Borislav Petkov <bp@suse.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Arjan van de Ven <arjan@linux.intel.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Nadav Amit <nadav.amit@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: linux-mm@kvack.org
Link: http://lkml.kernel.org/r/3acc7ad02a2ec060d2321a1e0f6de1cb90069517.1498022414.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/include/asm/tlbflush.h
arch/x86/kernel/smpboot.c

index 5f78c6a77578d2a619a1b4ac561ec6a9270a9d89..50ea3482e1d1d0babfecf7864a6e9307ba6651fe 100644 (file)
@@ -259,14 +259,6 @@ void native_flush_tlb_others(const struct cpumask *cpumask,
 #define TLBSTATE_OK    1
 #define TLBSTATE_LAZY  2
 
-static inline void reset_lazy_tlbstate(void)
-{
-       this_cpu_write(cpu_tlbstate.state, 0);
-       this_cpu_write(cpu_tlbstate.loaded_mm, &init_mm);
-
-       WARN_ON(read_cr3_pa() != __pa_symbol(swapper_pg_dir));
-}
-
 static inline void arch_tlbbatch_add_mm(struct arch_tlbflush_unmap_batch *batch,
                                        struct mm_struct *mm)
 {
index f04479a8f74f5598c8ee42bae66b17cee469ba49..6169a56aab49c5aa6812fdb9832907ac573fec78 100644 (file)
@@ -1589,7 +1589,6 @@ void native_cpu_die(unsigned int cpu)
 void play_dead_common(void)
 {
        idle_task_exit();
-       reset_lazy_tlbstate();
 
        /* Ack it */
        (void)cpu_report_death();