aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-03-26 07:25:00 -0400
committerDavid S. Miller <davem@davemloft.net>2008-03-26 07:25:00 -0400
commit69072f6e8e4bd4799d2a54e4ff8771d0657512c1 (patch)
treee4fdde1795285356bd8653b515958fba784195b6
parent062ea6d36c5841286f57b360534eb33139e506f3 (diff)
[SPARC64]: Fix __get_cpu_var in preemption-enabled area.
Reported by Mariusz Kozlowski. Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--arch/sparc64/mm/tlb.c3
1 files changed, 2 insertions, 1 deletions
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, };
23 23
24void flush_tlb_pending(void) 24void flush_tlb_pending(void)
25{ 25{
26 struct mmu_gather *mp = &__get_cpu_var(mmu_gathers); 26 struct mmu_gather *mp;
27 27
28 preempt_disable(); 28 preempt_disable();
29 29
30 mp = &__get_cpu_var(mmu_gathers);
30 if (mp->tlb_nr) { 31 if (mp->tlb_nr) {
31 flush_tsb_user(mp); 32 flush_tsb_user(mp);
32 33