i386: don't check_pgt_cache in flush_tlb_mm
authorHugh Dickins <hugh@veritas.com>
Thu, 17 May 2007 05:11:18 +0000 (22:11 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Thu, 17 May 2007 12:23:05 +0000 (05:23 -0700)
No other architecture calls check_pgt_cache() from within flush_tlb_mm(),
and i386 is already calling check_pgt_cache() from the usual places,
tlb_finish_mmu() and cpu_idle() (the latter being odd, but not unusual).
flush_tlb_mm() has no business to be freeing pages: remove that line, which
sneaked in with slub's i386 support.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: Andi Kleen <ak@suse.de>
Acked-by: Christoph Lameter <clameter@sgi.com>
Acked-by: William Lee Irwin III <wli@holomorphy.com>
Cc: David Miller <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/i386/kernel/smp.c

index c9a7c9835aba8bb63eda19c8ecaa83b5f814e8e9..6299c080f6e2e3ce9e003a28314278f0eaa5a974 100644 (file)
@@ -421,7 +421,7 @@ void flush_tlb_mm (struct mm_struct * mm)
        }
        if (!cpus_empty(cpu_mask))
                flush_tlb_others(cpu_mask, mm, TLB_FLUSH_ALL);
        }
        if (!cpus_empty(cpu_mask))
                flush_tlb_others(cpu_mask, mm, TLB_FLUSH_ALL);
-       check_pgt_cache();
+
        preempt_enable();
 }
 
        preempt_enable();
 }