tlb.c (f01387d2693813eb5271a3448e6a082322c7d75d) tlb.c (494fc42170bf0747ac28e12ef13a7d388d5ff2c7)
1/* arch/sparc64/mm/tlb.c
2 *
3 * Copyright (C) 2004 David S. Miller <davem@redhat.com>
4 */
5
6#include <linux/kernel.h>
7#include <linux/percpu.h>
8#include <linux/mm.h>

--- 38 unchanged lines hidden (view full) ---

47 tb->tlb_nr = 0;
48
49out:
50 put_cpu_var(tlb_batch);
51}
52
53void arch_enter_lazy_mmu_mode(void)
54{
1/* arch/sparc64/mm/tlb.c
2 *
3 * Copyright (C) 2004 David S. Miller <davem@redhat.com>
4 */
5
6#include <linux/kernel.h>
7#include <linux/percpu.h>
8#include <linux/mm.h>

--- 38 unchanged lines hidden (view full) ---

47 tb->tlb_nr = 0;
48
49out:
50 put_cpu_var(tlb_batch);
51}
52
53void arch_enter_lazy_mmu_mode(void)
54{
55 struct tlb_batch *tb = &__get_cpu_var(tlb_batch);
55 struct tlb_batch *tb = this_cpu_ptr(&tlb_batch);
56
57 tb->active = 1;
58}
59
60void arch_leave_lazy_mmu_mode(void)
61{
56
57 tb->active = 1;
58}
59
60void arch_leave_lazy_mmu_mode(void)
61{
62 struct tlb_batch *tb = &__get_cpu_var(tlb_batch);
62 struct tlb_batch *tb = this_cpu_ptr(&tlb_batch);
63
64 if (tb->tlb_nr)
65 flush_tlb_pending();
66 tb->active = 0;
67}
68
69static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr,
70 bool exec)

--- 173 unchanged lines hidden ---
63
64 if (tb->tlb_nr)
65 flush_tlb_pending();
66 tb->active = 0;
67}
68
69static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr,
70 bool exec)

--- 173 unchanged lines hidden ---