This was added erroneously by me. Hardware task switching does demand a TSS of at least 0x67 bytes, but that's not relevant in 64bit, and not relevant for Xen since commit 5d1181a5ea5e ("xen: Remove x86_32 build target.") in 2012.
We already load a 0-length TSS in early_traps_init() demonstrating that it's possible. Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com> --- CC: Jan Beulich <jbeul...@suse.com> CC: Roger Pau Monné <roger....@citrix.com> --- xen/arch/x86/cpu/common.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/xen/arch/x86/cpu/common.c b/xen/arch/x86/cpu/common.c index f6ec5c9df522..cdc41248d4e9 100644 --- a/xen/arch/x86/cpu/common.c +++ b/xen/arch/x86/cpu/common.c @@ -936,8 +936,6 @@ void load_system_tables(void) wrmsrl(MSR_ISST, (unsigned long)ist_ssp); } - BUILD_BUG_ON(sizeof(*tss) <= 0x67); /* Mandated by the architecture. */ - _set_tssldt_desc(gdt + TSS_ENTRY, (unsigned long)tss, sizeof(*tss) - 1, SYS_DESC_tss_avail); if ( IS_ENABLED(CONFIG_PV32) ) -- 2.39.5