mirror_ubuntu-kernels/arch/x86
Sean Christopherson 2ca3129e80 KVM: x86/mmu: Use separate namespaces for guest PTEs and shadow PTEs
Separate the macros for KVM's shadow PTEs (SPTE) from guest 64-bit PTEs
(PT64).  SPTE and PT64 are _mostly_ the same, but the few differences are
quite critical, e.g. *_BASE_ADDR_MASK must differentiate between host and
guest physical address spaces, and SPTE_PERM_MASK (was PT64_PERM_MASK) is
very much specific to SPTEs.

Opportunistically (and temporarily) move most guest macros into paging.h
to clearly associate them with shadow paging, and to ensure that they're
not used as of this commit.  A future patch will eliminate them entirely.

Sadly, PT32_LEVEL_BITS is left behind in mmu_internal.h because it's
needed for the quadrant calculation in kvm_mmu_get_page().  The quadrant
calculation is hot enough (when using shadow paging with 32-bit guests)
that adding a per-context helper is undesirable, and burying the
computation in paging_tmpl.h with a forward declaration isn't exactly an
improvement.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20220614233328.3896033-6-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-06-20 06:21:28 -04:00
..
boot Follow-up tweaks for the EFI changes in v5.19 2022-06-03 13:39:30 -07:00
coco Intel Trust Domain Extensions 2022-05-23 17:51:12 -07:00
configs x86/config: Make the x86 defconfigs a bit more usable 2022-03-27 20:58:35 +02:00
crypto crypto: x86 - eliminate anonymous module_init & module_exit 2022-04-08 16:13:31 +08:00
entry kernel-hardening updates for v5.19-rc1 2022-05-24 12:27:09 -07:00
events x86: events: Do not return bogus capabilities if PMU is broken 2022-06-08 13:06:15 -04:00
hyperv
ia32 x86: Remove a.out support 2022-04-11 18:04:27 +02:00
include KVM: x86: Move "apicv_active" into "struct kvm_lapic" 2022-06-20 06:21:24 -04:00
kernel x86/cpu: Add new VMX feature, Tertiary VM-Execution control 2022-06-08 04:47:13 -04:00
kvm KVM: x86/mmu: Use separate namespaces for guest PTEs and shadow PTEs 2022-06-20 06:21:28 -04:00
lib Not a lot of material this cycle. Many singleton patches against various 2022-05-27 11:22:03 -07:00
math-emu x86/32: Remove lazy GS macros 2022-04-14 14:09:43 +02:00
mm Use PAGE_ALIGNED() instead of open coding it in the x86/mm code. 2022-06-05 10:57:35 -07:00
net bpf: Introduce bpf_arch_text_invalidate for bpf_prog_pack 2022-05-23 23:08:11 +02:00
pci pci-v5.19-changes 2022-05-27 15:25:10 -07:00
platform arch/x86: replace cpumask_weight with cpumask_empty where appropriate 2022-06-03 06:52:57 -07:00
power x86/cpu: Load microcode during restore_processor_state() 2022-04-19 19:37:05 +02:00
purgatory
ras
realmode Intel Trust Domain Extensions 2022-05-23 17:51:12 -07:00
tools
um um: Fix out-of-bounds read in LDT setup 2022-05-27 09:03:41 +02:00
video
virt/vmx/tdx x86/tdx: Provide common base for SEAMCALL and TDCALL C wrappers 2022-04-07 08:27:50 -07:00
xen More power management updates for 5.19-rc1 2022-05-30 11:37:26 -07:00
.gitignore
Kbuild
Kconfig X86 microcode updates: 2022-06-05 10:55:23 -07:00
Kconfig.assembler
Kconfig.cpu
Kconfig.debug x86/Kconfig: Fix indentation of arch/x86/Kconfig.debug 2022-05-25 15:39:27 +02:00
Makefile Kbuild updates for v5.19 2022-05-26 12:09:50 -07:00
Makefile_32.cpu
Makefile.um