MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/4150
# Merge Request Required Information
## Summary of Changes
This pull request rebases KVM to 6.9
Tested: Smoke tested with kvm unit tests and selftests on AMD machine.
---
These are commits that I didn't include in the rebase, and rough justification:
```
kvm: explicitly set FOLL_HONOR_NUMA_FAULT in hva_to_pfn_slow() [GIT]
2023-08-21 David Hildenbrand kvm: explicitly set FOLL_HONOR_NUMA_FAULT in hva_to_pfn_slow()
-> Misses the required API
kvm: mmu: dynamically allocate the x86-mmu shrinker [GIT]
2023-10-04 Qi Zheng kvm: mmu: dynamically allocate the x86-mmu shrinker
-> Misses the required API
selftests/kvm: Replace attribute with macro [GIT]
2023-10-13 Maciej Wieczor-Retman selftests/kvm: Replace attribute with macro
needs __printf macros in selftests and backporting commit that added them caused issues
[PATCH v3 0/5] KVM: selftests: Add ID reg test, update headers
[PATCH v8 00/13] KVM: arm64: PMU: Allow userspace to limit the number of PMCs on vCPU
[PATCH 0/2] perf build: Fixes for arm64 sysreg-defs build rules
[PATCH v6 00/12] KVM: arm64: Support FEAT_LPA2 at hyp s1 and vm s2
2023-10-18 Jing Zhang KVM: arm64: selftests: Test for setting ID register from usersapce
2023-10-24 Reiji Watanabe KVM: selftests: aarch64: Introduce vpmu_counter_access test
2023-11-22 Oliver Upton perf build: Ensure sysreg-defs Makefile respects output dir
2023-11-27 Ryan Roberts KVM: selftests: arm64: Determine max ipa size per-page size
2023-11-27 Ryan Roberts KVM: selftests: arm64: Support P52V48 4K and 16K guest_modes
-> patches that are better to be backported via arm rebase
[PATCH v2 0/4] eventfd: simplify signal helpers
2023-11-28 Christian Brauner eventfd: simplify eventfd_signal()
-> Refactoring, and causes too many conflicts
[PATCH] arch/x86: Fix typos
2024-01-03 Bjorn Helgaas arch/x86: Fix typos
-> x86 refactoring
[PATCH v2 0/4] KVM: selftests: Annotate guest printfs as such
2023-12-01 Sean Christopherson KVM: selftests: Annotate guest ucall, printf, and assert helpers with __printf()
needs __printf macros in selftests and backporting commit that added them caused issues
[PATCH v6 00/13] x86/bugs: Add a separate config for each mitigation
2024-01-10 Breno Leitao x86/bugs: Rename CONFIG_RETPOLINE => CONFIG_MITIGATION_RETPOLINE
-> x86 refactoring
[PATCH v13 00/35] x86: enable FRED for x86-64
2024-01-25 Xin Li x86/trapnr: Add event type macros to <asm/trapnr.h>
2024-01-31 Xin Li KVM: VMX: Call fred_entry_from_kvm() for IRQ/NMI handling
-> should be backported with FRED
[PATCH v2 00/25] Add AMD Secure Nested Paging (SEV-SNP) Initialization Support
2024-01-29 Brijesh Singh crypto: ccp: Add support to initialize the AMD-SP for SEV-SNP
2024-01-29 Brijesh Singh KVM: SEV: Make AVIC backing, VMSA and VMCB memory allocation SNP safe
-> Small part of SEV-SNP, should go together with it IMHO
[PATCH v6 0/2] shrink lib/string.i via IWYU
2024-02-01 Tanzir Hasan kernel.h: removed REPEAT_BYTE from kernel.h
-> Tree wide refactoring
Re: [RFC PATCH v2] x86/sev: enforce RIP-relative accesses in early SEV/SME code
2024-02-06 Ard Biesheuvel x86/sev: Fix position dependent variable references in startup code
-> x86 guest code, IMHO should no be part of KVM rebase
[PATCH v3 0/8] treewide: Use clocksource ID for get_device_system_crosststamp()
2024-02-07 Peter Hilber kvmclock: Unexport kvmclock clocksource
-> Tree wide refactoring
work around gcc bugs with 'asm goto' with outputs [GIT]
2024-02-09 Linus Torvalds work around gcc bugs with 'asm goto' with outputs
-> Lots of conflicts, code that probably only Linus understands :). Might be needed, not 100% sure
[PATCH v8 0/6] Delay VERW
2024-02-19 Pawan Gupta x86/bugs: Use ALTERNATIVE() instead of mds_user_clear static key
2024-02-19 Sean Christopherson KVM/VMX: Use BT+JNC, i.e. EFLAGS.CF to select VMRESUME vs. VMLAUNCH
2024-02-19 Pawan Gupta KVM/VMX: Move VERW closer to VMentry for MDS mitigation
-> Should be backported by x86 core together with the rest of the patch series IMHO
treewide: replace or remove redundant def_bool in Kconfig files [GIT]
2024-02-20 Masahiro Yamada treewide: replace or remove redundant def_bool in Kconfig files
-> Tree wide refactoring
kbuild: change tool coverage variables to take the path relative to $(obj) [GIT]
2024-02-23 Masahiro Yamada kbuild: change tool coverage variables to take the path relative to $(obj)
-> Tree wide refactoring
[PATCH] treewide: remove meaningless assignments in Makefiles
2024-02-23 Masahiro Yamada treewide: remove meaningless assignments in Makefiles
-> Tree wide refactoring
[patch 0/9] x86: Cure tons of sparse warnings (mostly __percpu)
2024-03-04 Thomas Gleixner x86/cpu: Provide a declaration for itlb_multihit_kvm_mitigation
-> Another x86 refactoring
[PATCH v7 0/9] x86: Confine early 1:1 mapped startup code
2024-03-04 Ard Biesheuvel x86/sme: Move early SME kernel encryption handling into .head.text
-> x86 common code
mm/treewide: replace pmd_large() with pmd_leaf() [GIT]
mm/treewide: replace pud_large() with pud_leaf() [GIT]
mm/treewide: drop pXd_large() [GIT]
2024-03-06 Peter Xu mm/treewide: replace pmd_large() with pmd_leaf()
2024-03-06 Peter Xu mm/treewide: replace pud_large() with pud_leaf()
2024-03-06 Peter Xu mm/treewide: drop pXd_large()
-> Tree wide refactoring
KVM/x86: Export RFDS_NO and RFDS_CLEAR to guests [GIT]
2024-03-11 Pawan Gupta KVM/x86: Export RFDS_NO and RFDS_CLEAR to guests
-> should be applied as part of the mitigation code
[PATCH v2] mshyperv: Introduce hv_get_hypervisor_version function
[PATCH] hyperv-tlfs: Rename some HV_REGISTER_* defines for consistency
[PATCH v3] mshyperv: Introduce hv_numa_node_to_pxm_info()
2024-03-12 Nuno Das Neves mshyperv: Introduce hv_get_hypervisor_version function
2024-03-18 Nuno Das Neves hyperv-tlfs: Rename some HV_REGISTER_* defines for consistency
2024-03-22 Nuno Das Neves mshyperv: Introduce hv_numa_node_to_pxm_info()
-> should be part of next hyperv rebase
[PATCH 0/5] x86/sev: Fix SNP host late disable
2024-04-04 Borislav Petkov (AMD) x86/kvm/Kconfig: Have KVM_AMD_SEV select ARCH_HAS_CC_PLATFORM
2024-04-04 Borislav Petkov (AMD) x86/CPU/AMD: Track SNP host status with cc_platform_*()
-> I think that this should also be backported with rest of x86 code
x86/cpufeatures: Add CPUID_LNX_5 to track recently added Linux-defined word [GIT]
2024-04-04 Sean Christopherson x86/cpufeatures: Add CPUID_LNX_5 to track recently added Linux-defined word
-> x86 fix for commit that is not yet backported
x86/bhi: Add support for clearing branch history at syscall entry [GIT]
x86/bhi: Define SPEC_CTRL_BHI_DIS_S [GIT]
x86/bhi: Mitigate KVM by default [GIT]
KVM: x86: Add BHI_NO [GIT]
2024-04-08 Pawan Gupta x86/bhi: Add support for clearing branch history at syscall entry
2024-04-08 Daniel Sneddon x86/bhi: Define SPEC_CTRL_BHI_DIS_S
2024-04-08 Pawan Gupta x86/bhi: Mitigate KVM by default
2024-04-08 Daniel Sneddon KVM: x86: Add BHI_NO
-> x86 mitigation code, should be applied as part of the mitigation
```
## Approved Development Ticket
All submissions to CentOS Stream must reference an approved ticket in [Red Hat Jira](https://issues.redhat.com/). Please follow the CentOS Stream [contribution documentation](https://docs.centos.org/en-US/stream-contrib/quickstart/) for how to file this ticket and have it approved.
```
JIRA: https://issues.redhat.com/browse/RHEL-32430
Depends: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/4090
Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
```
Approved-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Approved-by: Tony Camuso <tcamuso@redhat.com>
Approved-by: Paolo Bonzini <bonzini@gnu.org>
Approved-by: Steve Best <sbest@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
Approved-by: Gavin Shan <gshan@redhat.com>
Merged-by: Scott Weaver <scweaver@redhat.com>