Commit "KVM: arm64: Fix S1PTW handling on RO memslots" changed the way S1PTW faults were handled by KVM. Before this fix, KVM treated any fault due to any S1PTW as a write, even S1PTW that didn't update the PTE. Some tests in page_fault_test mistakenly check for this KVM behavior and are currently failing. For example, there's a dirty log test that asserts that a S1PTW without AF or DA results in the PTE page getting dirty. The first commit fixes the userfaultfd check by relaxing all read vs. write checks. The second commit fixes the dirtylog tests by only asserting dirty bits when the AF bit is set. The third commit fixes an issue found after fixing the previous two: the dirty log test was checking for the first page in the PT region. Finally, commit "KVM: arm64: Fix S1PTW handling on RO memslots" allows for having readonly memslots holding page tables, so commit 4 add tests for it. Ricardo Koller (4): KVM: selftests: aarch64: Relax userfaultfd read vs. write checks KVM: selftests: aarch64: Do not default to dirty PTE pages on all S1PTWs KVM: selftests: aarch64: Fix check of dirty log PT write KVM: selftests: aarch64: Test read-only PT memory regions .../selftests/kvm/aarch64/page_fault_test.c | 183 ++++++++++-------- 1 file changed, 101 insertions(+), 82 deletions(-) -- 2.39.0.314.g84b9a713c41-goog