Hi, Below is a patch to enable nx for 32-bit PAE mode. Gerd Index: xen/include/asm-x86/x86_32/page-2level.h ==================================================================--- xen.orig/include/asm-x86/x86_32/page-2level.h 2005-06-21 10:06:12.000000000 +0200 +++ xen/include/asm-x86/x86_32/page-2level.h 2005-06-22 14:09:50.000000000 +0200 @@ -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)) Index: xen/include/asm-x86/x86_32/page-3level.h ==================================================================--- xen.orig/include/asm-x86/x86_32/page-3level.h 2005-06-21 10:06:12.000000000 +0200 +++ xen/include/asm-x86/x86_32/page-3level.h 2005-06-22 14:09:50.000000000 +0200 @@ -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)) Index: xen/include/asm-x86/x86_32/page.h ==================================================================--- xen.orig/include/asm-x86/x86_32/page.h 2005-06-21 10:06:12.000000000 +0200 +++ xen/include/asm-x86/x86_32/page.h 2005-06-22 14:09:50.000000000 +0200 @@ -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> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel