s390/mm,pgtable: don't use pte_val()/pXd_val() as lvalue
authorHeiko Carstens <hca@linux.ibm.com>
Mon, 21 Feb 2022 20:24:01 +0000 (21:24 +0100)
committerVasily Gorbik <gor@linux.ibm.com>
Tue, 1 Mar 2022 20:05:10 +0000 (21:05 +0100)
commit4a366f519a3c8883a6bc24efa710bc0e75bc3558
treeb1df36e712c405a6d1ad7c8c201b300678256e89
parentb8e3b37900a57f9e7b32a92cb16313b32c41c0db
s390/mm,pgtable: don't use pte_val()/pXd_val() as lvalue

Convert pgtable code so pte_val()/pXd_val() aren't used as lvalue
anymore. This allows in later step to convert pte_val()/pXd_val() to
functions, which in turn makes it impossible to use these macros to
modify page table entries like they have been used before.

Therefore a construct like this:

        pte_val(*pte) = __pa(addr) | prot;

which would directly write into a page table, isn't possible anymore
with the last step of this series.

Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/include/asm/pgtable.h
arch/s390/mm/pgtable.c