KVM: aarch64: Rebase (first round towards v6.3)
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2175143
This is the first round of backports for KVM/arch. It mostly goes up to v6.2 with the exceptions of few fixes which are post v6.2. Non regression tests, kseltests, kvm unit tests.
This first round takes patches/series which are rather independent on mm updates and generic/x86 kvm pieces. The rest will be picked up when dependencies get resolved
Among others were omitted on purpose:
- [PATCH v3 0/7] KVM: x86: never write to memory from kvm_vcpu_check_block
- [PATCH v10 0/7] KVM: arm64: Enable ring-based dirty memory tracking
- [PATCH v3 0/4] dirty_log_perf_test cpu pinning and some goodies
v7 -> v8:
- Dropped e1be43d9b5d0 ("overflow: Implement size_t saturating arithmetic helpers") which was pulled downstream by Nico Pache (downstream 0c70f0b1)
- Handled a new contextual conflict while cherry-picking 8675c6f22698 ("KVM: selftests: memslot_perf_test: Support variable guest page size") due to 197ebb713ad0 ("KVM: selftests: move common startup logic to kvm_util.c"), recently applied out-of-order.
v6 -> v7:
- rebase since Mark's MR #2025 has been merged. Also removed the depends tag.
- Improved 2 conflict resolution explanations according to gavin's suggestion
- Full cherry-pick of 1a6182033f2d ("KVM: arm64: selftests: Use FIELD_GET() to extract ID register fields") including modifications in aarch32_id_regs.c as reported by Connie and Gavin.
v4 -> v5:
- added 797b84517c19 KVM: selftests: Add test for AArch32 ID registers (Gavin)
v3 -> v4: Added 5 missing fixes (reported Connie, Prarit, Rafael):
- f850c84948ef ("proc/meminfo: fix spacing in SecPageTables")
- 9aec606c1609 ("tools: include: sync include/api/linux/kvm.h")
- 7a2726ec3290 ("KVM: Check KVM_CAP_DIRTY_LOG_{RING, RING_ACQ_REL} prior to enabling them")
- 0cab5b4964c7 ("arm64/sme: Fix context switch for SME only systems")
- d61a12cb9af5 ("KVM: selftests: Fix divide-by-zero bug in memslot_perf_test")
v2 -> v3:
- rebase after mm MR merge
- Took d38ba8ccd9c2 KVM: arm64/mmu: count KVM s2 mmu usage in secondary pagetable stats. So now [PATCH v7 0/4] KVM: mm: count KVM mmu usage in memory stats is fully downstream. This removes a conflict when cherry-picking aa6948f8 (" KVM: arm64: Add per-cpu fixmap infrastructure at EL2")
- "[PATCH v5 0/8] KVM: arm64: permit MAP_SHARED mappings with MTE enabled" fully incorporated
- "[PATCH v5 0/8] arm64/sve: Clean up KVM integration and optimise syscalls" fully incorporated
- I did not take b8f8d190fa8f KVM: arm64: Document the behaviour of S1PTW faults on RO memslots because of conflict that will be resolved after kvm generic rebase
- added [PATCH v2 0/3] arm64/sysreg: ISR register conversions
- added [PATCH v7 7/7] KVM: arm64: Normalize cache configuration
v1 -> v2:
- Removed aarch64/page_fault_test kselftests because we couldn't backport some of their fixes and they were skipped due to some failure
- Take some fixes post v6.2
-
- Moved to 'ready' state
Signed-off-by: Eric Auger eric.auger@redhat.com
Edited by Eric Auger