From: Grygorii Strashko <[email protected]>

Hi

This series introduces possibility to disable 32-bit (COMPAT) interface support
in the following cases:
      - Only PVH domains are used
      - Guests (OS) are started by using direct Direct Kernel Boot
      - Guests (OS) are 64-bit and Guest early boot code, which is running not
        in 64-bit mode, does not access Xen interfaces
        (hypercalls, shared_info, ..)

If above criterias are met the COMPAT HVM interface become unreachable and can 
be disabled.
Coverage reports analyze and adding guard (debug) exceptions in 
hvm_hypercall/hvm_do_multicall_call
and hvm_latch_shinfo_size() confirm that COMPAT HVM interface is unused for 
safety use-case.

Grygorii Strashko (5):
  x86: hvm: dm: factor out compat code under ifdefs
  x86: hvm: compat: introduce vcpu_is_hcall_compat() helper
  x86: hvm: factor out compat code under ifdefs
  x86: pvh: allow to disable 32-bit interface support
  x86: constify has_32bit_shinfo() if !CONFIG_COMPAT

 xen/arch/x86/hvm/Kconfig          | 19 +++++++++++++++-
 xen/arch/x86/hvm/dm.c             |  2 ++
 xen/arch/x86/hvm/hvm.c            | 22 +++++++++++++-----
 xen/arch/x86/hvm/hypercall.c      | 37 +++++++++++++++++++++++--------
 xen/arch/x86/hypercall.c          |  6 +----
 xen/arch/x86/include/asm/domain.h |  3 ++-
 xen/common/kernel.c               |  2 +-
 xen/include/xen/sched.h           |  9 ++++++++
 8 files changed, 78 insertions(+), 22 deletions(-)

-- 
2.34.1

Reply via email to