direct-io.hg
changeset 13980:32a059913591
x86-64: fix Lx_DISALLOW_MASK
x86-64's Lx_DISALLOW_MASK values weren't properly taking care of the
NX bit, L3 and L4 were needlessly customized, and the compat mode L3
one wasn't really matching native PAE.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
x86-64's Lx_DISALLOW_MASK values weren't properly taking care of the
NX bit, L3 and L4 were needlessly customized, and the compat mode L3
one wasn't really matching native PAE.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
author | kfraser@localhost.localdomain |
---|---|
date | Fri Feb 16 16:34:28 2007 +0000 (2007-02-16) |
parents | 7c739272bac8 |
children | 3c827d68fa87 |
files | xen/include/asm-x86/x86_64/page.h |
line diff
1.1 --- a/xen/include/asm-x86/x86_64/page.h Fri Feb 16 16:05:01 2007 +0000 1.2 +++ b/xen/include/asm-x86/x86_64/page.h Fri Feb 16 16:34:28 2007 +0000 1.3 @@ -89,14 +89,14 @@ typedef l4_pgentry_t root_pgentry_t; 1.4 * Permit the NX bit if the hardware supports it. 1.5 * Note that range [62:52] is available for software use on x86/64. 1.6 */ 1.7 -#define BASE_DISALLOW_MASK (0xFF000180U & ~_PAGE_NX) 1.8 +#define BASE_DISALLOW_MASK (0xFF800180U & ~_PAGE_NX) 1.9 1.10 #define L1_DISALLOW_MASK (BASE_DISALLOW_MASK | _PAGE_GNTTAB) 1.11 #define L2_DISALLOW_MASK (BASE_DISALLOW_MASK) 1.12 -#define L3_DISALLOW_MASK (BASE_DISALLOW_MASK | 0x180U /* must-be-zero */) 1.13 -#define L4_DISALLOW_MASK (BASE_DISALLOW_MASK | 0x180U /* must-be-zero */) 1.14 +#define L3_DISALLOW_MASK (BASE_DISALLOW_MASK) 1.15 +#define L4_DISALLOW_MASK (BASE_DISALLOW_MASK) 1.16 1.17 -#define COMPAT_L3_DISALLOW_MASK L3_DISALLOW_MASK 1.18 +#define COMPAT_L3_DISALLOW_MASK 0xFFFFF1E6U 1.19 1.20 #define PAGE_HYPERVISOR (__PAGE_HYPERVISOR | _PAGE_GLOBAL) 1.21 #define PAGE_HYPERVISOR_NOCACHE (__PAGE_HYPERVISOR_NOCACHE | _PAGE_GLOBAL)