powerpc/kvm/book3s: Use pte_present instead of opencoding _PAGE_PRESENT check
authorAneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Tue, 5 May 2020 07:17:26 +0000 (12:47 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 5 May 2020 11:20:16 +0000 (21:20 +1000)
This adds _PAGE_PTE check and makes sure we validate the pte value returned via
find_kvm_host_pte.

NOTE: this also considers _PAGE_INVALID to the software valid bit.

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/20200505071729.54912-20-aneesh.kumar@linux.ibm.com
arch/powerpc/include/asm/kvm_book3s_64.h

index 1ca1f64..c58e64a 100644 (file)
@@ -435,7 +435,7 @@ static inline pte_t kvmppc_read_update_linux_pte(pte_t *ptep, int writing)
                        continue;
                }
                /* If pte is not present return None */
-               if (unlikely(!(pte_val(old_pte) & _PAGE_PRESENT)))
+               if (unlikely(!pte_present(old_pte)))
                        return __pte(0);
 
                new_pte = pte_mkyoung(old_pte);