aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2005-06-22 17:42:58 +0000
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2005-06-22 17:42:58 +0000
commitaa124bc09a2a5c168fa3c87ec3b74bf5bc7f96b3 (patch)
treec7b2497c6c6e1f7f47d008ad09cd63dca00b260e
parent8db6546ae81567da5cc967e1100b931d6e33a7fb (diff)
downloadxen-aa124bc09a2a5c168fa3c87ec3b74bf5bc7f96b3.tar.gz
xen-aa124bc09a2a5c168fa3c87ec3b74bf5bc7f96b3.tar.bz2
xen-aa124bc09a2a5c168fa3c87ec3b74bf5bc7f96b3.zip
bitkeeper revision 1.1726.1.4 (42b9a3227hiEkDxIFEfJ234PDK9C8w)
Enable NX bit support in 32-bit pae mode. Signed-off-by: Gerd Knorr <kraxel@bytesex.org>
-rw-r--r--xen/include/asm-x86/x86_32/page-2level.h2
-rw-r--r--xen/include/asm-x86/x86_32/page-3level.h2
-rw-r--r--xen/include/asm-x86/x86_32/page.h2
3 files changed, 4 insertions, 2 deletions
diff --git a/xen/include/asm-x86/x86_32/page-2level.h b/xen/include/asm-x86/x86_32/page-2level.h
index 34128f24fa..4f11ac49ca 100644
--- a/xen/include/asm-x86/x86_32/page-2level.h
+++ b/xen/include/asm-x86/x86_32/page-2level.h
@@ -46,6 +46,8 @@ typedef l2_pgentry_t root_pgentry_t;
* 12-bit flags = (pte[11:0])
*/
+#define _PAGE_NX 0U
+
/* Extract flags into 12-bit integer, or turn 12-bit flags into a pte mask. */
#define get_pte_flags(x) ((int)(x) & 0xFFF)
#define put_pte_flags(x) ((intpte_t)((x) & 0xFFF))
diff --git a/xen/include/asm-x86/x86_32/page-3level.h b/xen/include/asm-x86/x86_32/page-3level.h
index 1fc423c073..79b14169e9 100644
--- a/xen/include/asm-x86/x86_32/page-3level.h
+++ b/xen/include/asm-x86/x86_32/page-3level.h
@@ -59,6 +59,8 @@ typedef l3_pgentry_t root_pgentry_t;
* 32-bit flags = (pte[63:44],pte[11:0])
*/
+#define _PAGE_NX (cpu_has_nx ? (1<<31) : 0)
+
/* Extract flags into 32-bit integer, or turn 32-bit flags into a pte mask. */
#define get_pte_flags(x) (((int)((x) >> 32) & ~0xFFF) | ((int)(x) & 0xFFF))
#define put_pte_flags(x) (((intpte_t)((x) & ~0xFFF) << 40) | ((x) & 0xFFF))
diff --git a/xen/include/asm-x86/x86_32/page.h b/xen/include/asm-x86/x86_32/page.h
index 9546706876..41396fa6a4 100644
--- a/xen/include/asm-x86/x86_32/page.h
+++ b/xen/include/asm-x86/x86_32/page.h
@@ -7,8 +7,6 @@
#define VADDR_BITS 32
#define VADDR_MASK (~0UL)
-#define _PAGE_NX 0U
-
#include <xen/config.h>
#ifdef CONFIG_X86_PAE
# include <asm/x86_32/page-3level.h>