x86/shstk: Introduce Supervisor Shadow Stack support
authorAndrew Cooper <andrew.cooper3@citrix.com>
Fri, 21 Feb 2020 17:56:57 +0000 (17:56 +0000)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Fri, 29 May 2020 22:09:46 +0000 (23:09 +0100)
commitd3fb3ed32fc8ee4cb453058e54e7c317a9b93922
treeac1409c8d15639aaee19dfd0da0dab0ed9d4dbe1
parentc65da4f721efc54ea7fb35e3f7f05159f2243c61
x86/shstk: Introduce Supervisor Shadow Stack support

Introduce CONFIG_HAS_AS_CET_SS to determine whether CET Shadow Stack
instructions are supported in the assembler, and CONFIG_XEN_SHSTK as the main
build option.

Introduce cet={no-,}shstk to for a user to select whether or not to use shadow
stacks at runtime, and X86_FEATURE_XEN_SHSTK to determine Xen's overall
enablement of shadow stacks.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
docs/misc/xen-command-line.pandoc
xen/arch/x86/Kconfig
xen/arch/x86/setup.c
xen/include/asm-x86/cpufeature.h
xen/include/asm-x86/cpufeatures.h
xen/scripts/Kconfig.include