]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - arch/powerpc/mm/tlb-radix.c
UBUNTU: SAUCE: powerpc/mm/radix: Don't do page walk cache flush when doing full mm...
[mirror_ubuntu-zesty-kernel.git] / arch / powerpc / mm / tlb-radix.c
index 952713d6cf04d0e826a685f181561d587df41257..74f17e3c7cbea955889a2facbf339def65e72a42 100644 (file)
@@ -129,6 +129,12 @@ void radix__local_flush_tlb_pwc(struct mmu_gather *tlb, unsigned long addr)
 {
        unsigned long pid;
        struct mm_struct *mm = tlb->mm;
+       /*
+        * If we are doing a full mm flush, we will do a tlb flush
+        * with RIC_FLUSH_ALL later.
+        */
+       if (tlb->fullmm)
+               return;
 
        preempt_disable();
 
@@ -195,6 +201,12 @@ void radix__flush_tlb_pwc(struct mmu_gather *tlb, unsigned long addr)
        unsigned long pid;
        struct mm_struct *mm = tlb->mm;
 
+       /*
+        * If we are doing a full mm flush, we will do a tlb flush
+        * with RIC_FLUSH_ALL later.
+        */
+       if (tlb->fullmm)
+               return;
        preempt_disable();
 
        pid = mm->context.id;