提交 f0af9707 编写于 作者: D David S. Miller

sparc64: Fix missing put_cpu_var() in tlb_batch_add_one() when not batching.

Reported-by: NMeelis Roos <mroos@linux.ee>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 60d509fa
...@@ -87,7 +87,7 @@ static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr, ...@@ -87,7 +87,7 @@ static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr,
if (!tb->active) { if (!tb->active) {
global_flush_tlb_page(mm, vaddr); global_flush_tlb_page(mm, vaddr);
flush_tsb_user_page(mm, vaddr); flush_tsb_user_page(mm, vaddr);
return; goto out;
} }
if (nr == 0) if (nr == 0)
...@@ -98,6 +98,7 @@ static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr, ...@@ -98,6 +98,7 @@ static void tlb_batch_add_one(struct mm_struct *mm, unsigned long vaddr,
if (nr >= TLB_BATCH_NR) if (nr >= TLB_BATCH_NR)
flush_tlb_pending(); flush_tlb_pending();
out:
put_cpu_var(tlb_batch); put_cpu_var(tlb_batch);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册