On Wed, 23 Oct 2024 15:53:08 +0100, Marc Zyngier wrote: > This series serves a few purposes: > > - Complete the S1PIE/S1POE support to include EL2 > - Sneak in the EL2 system register world switch > > As mentioned in few of the patches, this implementation relies on a > very recent fix to the architecture (D22677 in [0]). > > [...] Applied to kvmarm/next, thanks! [01/37] arm64: Drop SKL0/SKL1 from TCR2_EL2 https://git.kernel.org/kvmarm/kvmarm/c/d41571c7097a [02/37] arm64: Remove VNCR definition for PIRE0_EL2 https://git.kernel.org/kvmarm/kvmarm/c/5792349d0cce [03/37] arm64: Add encoding for PIRE0_EL2 https://git.kernel.org/kvmarm/kvmarm/c/4ecda4c67961 [04/37] KVM: arm64: Drop useless struct s2_mmu in __kvm_at_s1e2() https://git.kernel.org/kvmarm/kvmarm/c/a5c870d0939b [05/37] KVM: arm64: nv: Add missing EL2->EL1 mappings in get_el2_to_el1_mapping() https://git.kernel.org/kvmarm/kvmarm/c/dfeb91686992 [06/37] KVM: arm64: nv: Handle CNTHCTL_EL2 specially https://git.kernel.org/kvmarm/kvmarm/c/164b5e20cdf6 [07/37] KVM: arm64: nv: Save/Restore vEL2 sysregs https://git.kernel.org/kvmarm/kvmarm/c/b9527b38c667 [08/37] KVM: arm64: Correctly access TCR2_EL1, PIR_EL1, PIRE0_EL1 with VHE https://git.kernel.org/kvmarm/kvmarm/c/14ca930d828b [09/37] KVM: arm64: Extend masking facility to arbitrary registers https://git.kernel.org/kvmarm/kvmarm/c/a0162020095e [10/37] arm64: Define ID_AA64MMFR1_EL1.HAFDBS advertising FEAT_HAFT https://git.kernel.org/kvmarm/kvmarm/c/9ae424d2a1ae [11/37] KVM: arm64: Add TCR2_EL2 to the sysreg arrays https://git.kernel.org/kvmarm/kvmarm/c/69c19e047dfe [12/37] KVM: arm64: Sanitise TCR2_EL2 https://git.kernel.org/kvmarm/kvmarm/c/ad4f6ef0fa19 [13/37] KVM: arm64: Add save/restore for TCR2_EL2 https://git.kernel.org/kvmarm/kvmarm/c/5055938452ed [14/37] KVM: arm64: Add PIR{,E0}_EL2 to the sysreg arrays https://git.kernel.org/kvmarm/kvmarm/c/5f8d5a15ef5a [15/37] KVM: arm64: Add save/restore for PIR{,E0}_EL2 https://git.kernel.org/kvmarm/kvmarm/c/b3ad940a0887 [16/37] KVM: arm64: Handle PIR{,E0}_EL2 traps https://git.kernel.org/kvmarm/kvmarm/c/874ae1d48e60 [17/37] KVM: arm64: Sanitise ID_AA64MMFR3_EL1 (no commit info) [18/37] KVM: arm64: Add AT fast-path support for S1PIE https://git.kernel.org/kvmarm/kvmarm/c/23e7a34c8397 [19/37] KVM: arm64: Split S1 permission evaluation into direct and hierarchical parts https://git.kernel.org/kvmarm/kvmarm/c/4967b87a9ff7 [20/37] KVM: arm64: Disable hierarchical permissions when S1PIE is enabled https://git.kernel.org/kvmarm/kvmarm/c/5e21b2978722 [21/37] KVM: arm64: Implement AT S1PIE support https://git.kernel.org/kvmarm/kvmarm/c/364c081029a6 [22/37] KVM: arm64: Add a composite EL2 visibility helper https://git.kernel.org/kvmarm/kvmarm/c/ee3a9a0643c5 [23/37] KVM: arm64: Define helper for EL2 registers with custom visibility https://git.kernel.org/kvmarm/kvmarm/c/997eeecafeba [24/37] KVM: arm64: Hide TCR2_EL1 from userspace when disabled for guests https://git.kernel.org/kvmarm/kvmarm/c/0fcb4eea5345 [25/37] KVM: arm64: Hide S1PIE registers from userspace when disabled for guests https://git.kernel.org/kvmarm/kvmarm/c/a68cddbe47ef [26/37] KVM: arm64: Rely on visibility to let PIR*_ELx/TCR2_ELx UNDEF https://git.kernel.org/kvmarm/kvmarm/c/b4824120303f [27/37] arm64: Add encoding for POR_EL2 https://git.kernel.org/kvmarm/kvmarm/c/b9ed7e5dfbe9 [28/37] KVM: arm64: Drop bogus CPTR_EL2.E0POE trap routing https://git.kernel.org/kvmarm/kvmarm/c/b17d8aa20126 [29/37] KVM: arm64: Subject S1PIE/S1POE registers to HCR_EL2.{TVM,TRVM} https://git.kernel.org/kvmarm/kvmarm/c/f7575530df43 [30/37] KVM: arm64: Add kvm_has_s1poe() helper https://git.kernel.org/kvmarm/kvmarm/c/26e89dccdf63 [31/37] KVM: arm64: Add basic support for POR_EL2 https://git.kernel.org/kvmarm/kvmarm/c/5970e9903f03 [32/37] KVM: arm64: Add save/restore support for POR_EL2 https://git.kernel.org/kvmarm/kvmarm/c/de5c2827fb44 [33/37] KVM: arm64: Add POE save/restore for AT emulation fast-path https://git.kernel.org/kvmarm/kvmarm/c/846c993df982 [34/37] KVM: arm64: Disable hierarchical permissions when POE is enabled https://git.kernel.org/kvmarm/kvmarm/c/8a9b304d7e22 [35/37] KVM: arm64: Make PAN conditions part of the S1 walk context https://git.kernel.org/kvmarm/kvmarm/c/7cd5c2796cb0 [36/37] KVM: arm64: Handle stage-1 permission overlays https://git.kernel.org/kvmarm/kvmarm/c/e39ce7033c70 [37/37] KVM: arm64: Handle WXN attribute https://git.kernel.org/kvmarm/kvmarm/c/1c6801d565ec -- Best, Oliver