x86/page: Remove bifurcated PAGE_HYPERVISOR constant
authorAndrew Cooper <andrew.cooper3@citrix.com>
Mon, 13 Jan 2020 12:42:09 +0000 (12:42 +0000)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Thu, 16 Jan 2020 19:26:09 +0000 (19:26 +0000)
commit97f10daf5f4bac91db732ef45c562839686f2c04
tree48ef81210bb6f64f8bacae4df9082a66a687f3fc
parentad0b3df0f58451c9df26e455148b2d33957bc347
x86/page: Remove bifurcated PAGE_HYPERVISOR constant

Despite being vaguely aware, the difference between PAGE_HYPERVISOR in ASM and
C code has nevertheless caused several bugs I should have known better about,
and contributed to review confusion.

There are exactly 4 uses of these constants in asm code (and one is shortly
going to disappear).

Instead of creating the constants which behave differently between ASM and C
code, expose all the constants and use non-ambiguous non-NX ones in ASM.
Adjust the hiding to just _PAGE_NX, which contains a C ternary expression.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
xen/arch/x86/boot/head.S
xen/arch/x86/boot/x86_64.S
xen/include/asm-x86/page.h
xen/include/asm-x86/x86_64/page.h