s390/mm,pageattr: fix walk_pte_level() early exit
authorHeiko Carstens <hca@linux.ibm.com>
Tue, 24 Aug 2021 13:21:44 +0000 (15:21 +0200)
committerHeiko Carstens <hca@linux.ibm.com>
Wed, 25 Aug 2021 09:03:34 +0000 (11:03 +0200)
commitc4f0e5cfde354b1d6cf2388c0920264985c6c139
tree20b2756b1da2350a4ac577382833d68eaf930025
parent8b5f08b484bd948e1bedcd5a637a4f7609f1c7c1
s390/mm,pageattr: fix walk_pte_level() early exit

In case of splitting to 4k mapping the early exit in walk_pte_level()
must only be taken iff flags is equal to SET_MEMORY_4K.
Currently the early exit is taken if the flag is set, and also others
might be set. This may lead to the situation that a mapping is split
but other changes are not done, like e.g. setting pages to R/W.

There is currently no such caller, but there might be in the future.

Fixes: b3e1a00c8fa4 ("s390/mm: implement set_memory_4k()")
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/mm/pageattr.c