From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leonardo Bras Date: Wed, 19 Feb 2020 18:00:50 +0000 Subject: Re: [PATCH] KVM: PPC: Book3S HV: Use RADIX_PTE_INDEX_SIZE in Radix MMU code Message-Id: MIME-Version: 1 Content-Type: multipart/mixed; boundary="=-WANm6kNd/+v1nI1QzPkC" List-Id: References: <20200218043650.24410-1-mpe@ellerman.id.au> In-Reply-To: <20200218043650.24410-1-mpe@ellerman.id.au> To: Michael Ellerman , kvm-ppc@vger.kernel.org Cc: linuxppc-dev@ozlabs.org --=-WANm6kNd/+v1nI1QzPkC Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Michael, On Tue, 2020-02-18 at 15:36 +1100, Michael Ellerman wrote: > In kvmppc_unmap_free_pte() in book3s_64_mmu_radix.c, we use the > non-constant value PTE_INDEX_SIZE to clear a PTE page. >=20 > We can instead use the constant RADIX_PTE_INDEX_SIZE, because we know > this code will only be running when the Radix MMU is active. >=20 > Note that we already use RADIX_PTE_INDEX_SIZE for the allocation of > kvm_pte_cache. >=20 > Signed-off-by: Michael Ellerman > --- > arch/powerpc/kvm/book3s_64_mmu_radix.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) >=20 > diff --git a/arch/powerpc/kvm/book3s_64_mmu_radix.c b/arch/powerpc/kvm/bo= ok3s_64_mmu_radix.c > index 803940d79b73..134fbc1f029f 100644 > --- a/arch/powerpc/kvm/book3s_64_mmu_radix.c > +++ b/arch/powerpc/kvm/book3s_64_mmu_radix.c > @@ -425,7 +425,7 @@ static void kvmppc_unmap_free_pte(struct kvm *kvm, pt= e_t *pte, bool full, > unsigned int lpid) > { > if (full) { > - memset(pte, 0, sizeof(long) << PTE_INDEX_SIZE); > + memset(pte, 0, sizeof(long) << RADIX_PTE_INDEX_SIZE); > } else { > pte_t *p =3D pte; > unsigned long it; Looks fine to mee.=20 For book3s_64, pgtable.h says: extern unsigned long __pte_index_size; #define PTE_INDEX_SIZE __pte_index_size powerpc/mm/pgtable_64.c defines/export the variable: unsigned long __pte_index_size; EXPORT_SYMBOL(__pte_index_size); And book3s64/radix_pgtable.c set the value in radix__early_init_mmu(). __pte_index_size =3D RADIX_PTE_INDEX_SIZE; So I think it's ok to use the value directly in book3s_64_mmu_radix.c. The include dependency looks fine for that to work. FWIW: Reviewed-by: Leonardo Bras --=-WANm6kNd/+v1nI1QzPkC Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEMdeUgIzgjf6YmUyOlQYWtz9SttQFAl5Nd9IACgkQlQYWtz9S ttQU/g/8C1JEQTzs3SKTcxD4d/Qnbo8koRKYz9F3wcsLsKgkMZaJPM4a/JtXQyEf uE/pBmy3zKvmwjlUuJQwnWwLqyxZYmf7lw479lqX+5I1oRC/lg7bwaLT2LuyNuJU yO25vj8yPUXkmWhFgGgbTV3bUz7w1i3jG7BoNf/HCZkABidpOzbrDrqxcMPat5u2 tcKTd2yOEBuELStgJNEWu9uJkbqxB6K97ij6V5hUtqmop/8Ox6EyXrXDbp3N5pjM EATBxBUeZtnnuoyb5KxpDnhyE5U966+LWt+dDwWHborMCX6KeKlMPhms3OBieFj6 eeqABl7DzTxnWE6swpmbx8j5YJczkvNfFz99gCZV8GrtT9VAKOv9Lqliv4bUJX/o U1DtQd4p6E11FhK++rF151IwM30CF7Up+8c6AvQBANhV0hHMmHOYnVSN1uU9DOdb Ux+/QAX0F//TSPCiqSxUSrYID2VKsjlt7VqLnwiVkO6CnwOWs2FHg7bIwrnQHFVn FISzAd9IjutTrDeCOMLSbs6djpWQ6g3SG/IwjD+tDbsrMGS/vYeGtu3s//qho2Ux X+cjxc7l8GEqNyV9WsWg6tWyBoPTJmK9to65LnbYZs6pcB3nc6Zmvjcj9x03fnCr 0fqX2noHT5AmGQnta9dW2/2ZLkif3utCZ1/qX/0Vt9KE2PMqOQA= =gMeG -----END PGP SIGNATURE----- --=-WANm6kNd/+v1nI1QzPkC--