From: David S. Miller Date: Wed, 24 Apr 2013 23:52:18 +0000 (-0700) Subject: sparc64: Fix missing put_cpu_var() in tlb_batch_add_one() when not batching. X-Git-Tag: v3.9~10^2 X-Git-Url: http://git.cascardo.eti.br/?a=commitdiff_plain;h=f0af97070acbad5d6a361f485828223a4faaa0ee;p=cascardo%2Flinux.git sparc64: Fix missing put_cpu_var() in tlb_batch_add_one() when not batching. Reported-by: Meelis Roos Signed-off-by: David S. Miller --- diff --git a/arch/sparc/mm/tlb.c b/arch/sparc/mm/tlb.c index 272aa4f7657e..83d89bcb44af 100644 --- a/arch/sparc/mm/tlb.c +++ b/arch/sparc/mm/tlb.c @@ -87,7 +87,7 @@ static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr, if (!tb->active) { global_flush_tlb_page(mm, vaddr); flush_tsb_user_page(mm, vaddr); - return; + goto out; } if (nr == 0) @@ -98,6 +98,7 @@ static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr, if (nr >= TLB_BATCH_NR) flush_tlb_pending(); +out: put_cpu_var(tlb_batch); }