summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAneesh Kumar K.V <aneesh.kumar@linux.ibm.com>2019-10-24 09:58:01 +0200
committerMichael Ellerman <mpe@ellerman.id.au>2019-11-05 12:24:18 +0100
commit864edb758c50c30787bb51f2e26c4be2b4937025 (patch)
treef56aaca43f439457b474ec82ab3cb7ed8cebf7b1 /include
parentpowerpc/mm/book3s64/radix: Use freed_tables instead of need_flush_all (diff)
downloadlinux-864edb758c50c30787bb51f2e26c4be2b4937025.tar.xz
linux-864edb758c50c30787bb51f2e26c4be2b4937025.zip
powerpc/mm/book3s64/radix: Flush the full mm even when need_flush_all is set
With the previous patch, we should now not be using need_flush_all for powerpc. But then make sure we force a PID tlbie flush with RIC=2 if we ever find need_flush_all set. Also don't reset it after a mmu gather flush. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20191024075801.22434-3-aneesh.kumar@linux.ibm.com
Diffstat (limited to 'include')
-rw-r--r--include/asm-generic/tlb.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asm-generic/tlb.h b/include/asm-generic/tlb.h
index 04c0644006fd..e64991142a8b 100644
--- a/include/asm-generic/tlb.h
+++ b/include/asm-generic/tlb.h
@@ -428,7 +428,7 @@ static inline void tlb_change_page_size(struct mmu_gather *tlb,
{
#ifdef CONFIG_HAVE_MMU_GATHER_PAGE_SIZE
if (tlb->page_size && tlb->page_size != page_size) {
- if (!tlb->fullmm)
+ if (!tlb->fullmm && !tlb->need_flush_all)
tlb_flush_mmu(tlb);
}