x86/pv: Options to disable and/or compile out 32bit PV support
authorAndrew Cooper <andrew.cooper3@citrix.com>
Fri, 17 Apr 2020 11:39:40 +0000 (12:39 +0100)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Wed, 29 Apr 2020 20:13:00 +0000 (21:13 +0100)
commit68d757df8dd23b88bebfb6a56c9f51df59de969f
tree5274fc17af6e2fc223f866e4e3e5f60d11fb5468
parent4304ff420e51b973ec9eb9dafd64a917dd9c0fb1
x86/pv: Options to disable and/or compile out 32bit PV support

This is the start of some performance and security-hardening improvements,
based on the fact that 32bit PV guests are few and far between these days.

Ring1 is full of architectural corner cases, such as counting as supervisor
from a paging point of view.  This accounts for a substantial performance hit
on processors from the last 8 years (adjusting SMEP/SMAP on every privilege
transition), and the gap is only going to get bigger with new hardware
features.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Wei Liu <wl@xen.org>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
docs/misc/xen-command-line.pandoc
xen/arch/x86/Kconfig
xen/arch/x86/pv/domain.c
xen/arch/x86/setup.c
xen/include/asm-x86/pv/domain.h
xen/include/xen/param.h