x86/Xen: swap NX determination and GDT setup on BSP
authorJan Beulich <jbeulich@suse.com>
Thu, 20 May 2021 11:42:42 +0000 (13:42 +0200)
committerJuergen Gross <jgross@suse.com>
Fri, 21 May 2021 07:53:52 +0000 (09:53 +0200)
commitae897fda4f507e4b239f0bdfd578b3688ca96fb4
tree1aafdd4836bc30fe0cfcc07bf872d47062051e81
parent97729b653de52ba98e08732dd8855586e37a3a31
x86/Xen: swap NX determination and GDT setup on BSP

xen_setup_gdt(), via xen_load_gdt_boot(), wants to adjust page tables.
For this to work when NX is not available, x86_configure_nx() needs to
be called first.

[jgross] Note that this is a revert of 36104cb9012a82e73 ("x86/xen:
Delay get_cpu_cap until stack canary is established"), which is possible
now that we no longer support running as PV guest in 32-bit mode.

Cc: <stable.vger.kernel.org> # 5.9
Fixes: 36104cb9012a82e73 ("x86/xen: Delay get_cpu_cap until stack canary is established")
Reported-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Link: https://lore.kernel.org/r/12a866b0-9e89-59f7-ebeb-a2a6cec0987a@suse.com
Signed-off-by: Juergen Gross <jgross@suse.com>
arch/x86/xen/enlighten_pv.c