From: David S. Miller Date: Wed, 26 Mar 2008 11:25:00 +0000 (-0700) Subject: [SPARC64]: Fix __get_cpu_var in preemption-enabled area. X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=69072f6e8e4bd4799d2a54e4ff8771d0657512c1;p=openwrt%2Fstaging%2Fblogic.git [SPARC64]: Fix __get_cpu_var in preemption-enabled area. Reported by Mariusz Kozlowski. Signed-off-by: David S. Miller --- diff --git a/arch/sparc64/mm/tlb.c b/arch/sparc64/mm/tlb.c index 3f10fc921b00..a0f000b293de 100644 --- a/arch/sparc64/mm/tlb.c +++ b/arch/sparc64/mm/tlb.c @@ -23,10 +23,11 @@ DEFINE_PER_CPU(struct mmu_gather, mmu_gathers) = { 0, }; void flush_tlb_pending(void) { - struct mmu_gather *mp = &__get_cpu_var(mmu_gathers); + struct mmu_gather *mp; preempt_disable(); + mp = &__get_cpu_var(mmu_gathers); if (mp->tlb_nr) { flush_tsb_user(mp);