|
@@ -98,38 +98,44 @@ extern pgd_t swapper_pg_dir[PTRS_PER_PGD];
|
|
|
extern pte_t kernel_vmalloc_ptes[(VMALLOC_END - VMALLOC_START) / PAGE_SIZE];
|
|
|
#endif
|
|
|
|
|
|
-/* IPTEL/DPTEL bit assignments */
|
|
|
-#define _PAGE_BIT_VALID xPTEL_V_BIT
|
|
|
-#define _PAGE_BIT_ACCESSED xPTEL_UNUSED1_BIT /* mustn't be loaded into IPTEL/DPTEL */
|
|
|
-#define _PAGE_BIT_NX xPTEL_UNUSED2_BIT /* mustn't be loaded into IPTEL/DPTEL */
|
|
|
-#define _PAGE_BIT_CACHE xPTEL_C_BIT
|
|
|
-#define _PAGE_BIT_PRESENT xPTEL_PV_BIT
|
|
|
-#define _PAGE_BIT_DIRTY xPTEL_D_BIT
|
|
|
-#define _PAGE_BIT_GLOBAL xPTEL_G_BIT
|
|
|
-
|
|
|
-#define _PAGE_VALID xPTEL_V
|
|
|
-#define _PAGE_ACCESSED xPTEL_UNUSED1
|
|
|
-#define _PAGE_NX xPTEL_UNUSED2 /* no-execute bit */
|
|
|
-#define _PAGE_CACHE xPTEL_C
|
|
|
-#define _PAGE_PRESENT xPTEL_PV
|
|
|
-#define _PAGE_DIRTY xPTEL_D
|
|
|
-#define _PAGE_PROT xPTEL_PR
|
|
|
-#define _PAGE_PROT_RKNU xPTEL_PR_ROK
|
|
|
-#define _PAGE_PROT_WKNU xPTEL_PR_RWK
|
|
|
-#define _PAGE_PROT_RKRU xPTEL_PR_ROK_ROU
|
|
|
-#define _PAGE_PROT_WKRU xPTEL_PR_RWK_ROU
|
|
|
-#define _PAGE_PROT_WKWU xPTEL_PR_RWK_RWU
|
|
|
-#define _PAGE_GLOBAL xPTEL_G
|
|
|
-#define _PAGE_PSE xPTEL_PS_4Mb /* 4MB page */
|
|
|
-
|
|
|
-#define _PAGE_FILE xPTEL_UNUSED1_BIT /* set:pagecache unset:swap */
|
|
|
-
|
|
|
-#define __PAGE_PROT_UWAUX 0x040
|
|
|
-#define __PAGE_PROT_USER 0x080
|
|
|
-#define __PAGE_PROT_WRITE 0x100
|
|
|
+/* IPTEL2/DPTEL2 bit assignments */
|
|
|
+#define _PAGE_BIT_VALID xPTEL2_V_BIT
|
|
|
+#define _PAGE_BIT_CACHE xPTEL2_C_BIT
|
|
|
+#define _PAGE_BIT_PRESENT xPTEL2_PV_BIT
|
|
|
+#define _PAGE_BIT_DIRTY xPTEL2_D_BIT
|
|
|
+#define _PAGE_BIT_GLOBAL xPTEL2_G_BIT
|
|
|
+#define _PAGE_BIT_ACCESSED xPTEL2_UNUSED1_BIT /* mustn't be loaded into IPTEL2/DPTEL2 */
|
|
|
+
|
|
|
+#define _PAGE_VALID xPTEL2_V
|
|
|
+#define _PAGE_CACHE xPTEL2_C
|
|
|
+#define _PAGE_PRESENT xPTEL2_PV
|
|
|
+#define _PAGE_DIRTY xPTEL2_D
|
|
|
+#define _PAGE_PROT xPTEL2_PR
|
|
|
+#define _PAGE_PROT_RKNU xPTEL2_PR_ROK
|
|
|
+#define _PAGE_PROT_WKNU xPTEL2_PR_RWK
|
|
|
+#define _PAGE_PROT_RKRU xPTEL2_PR_ROK_ROU
|
|
|
+#define _PAGE_PROT_WKRU xPTEL2_PR_RWK_ROU
|
|
|
+#define _PAGE_PROT_WKWU xPTEL2_PR_RWK_RWU
|
|
|
+#define _PAGE_GLOBAL xPTEL2_G
|
|
|
+#define _PAGE_PS_MASK xPTEL2_PS
|
|
|
+#define _PAGE_PS_4Kb xPTEL2_PS_4Kb
|
|
|
+#define _PAGE_PS_128Kb xPTEL2_PS_128Kb
|
|
|
+#define _PAGE_PS_1Kb xPTEL2_PS_1Kb
|
|
|
+#define _PAGE_PS_4Mb xPTEL2_PS_4Mb
|
|
|
+#define _PAGE_PSE xPTEL2_PS_4Mb /* 4MB page */
|
|
|
+#define _PAGE_CACHE_WT xPTEL2_CWT
|
|
|
+#define _PAGE_ACCESSED xPTEL2_UNUSED1
|
|
|
+#define _PAGE_NX 0 /* no-execute bit */
|
|
|
+
|
|
|
+/* If _PAGE_VALID is clear, we use these: */
|
|
|
+#define _PAGE_FILE xPTEL2_C /* set:pagecache unset:swap */
|
|
|
+#define _PAGE_PROTNONE 0x000 /* If not present */
|
|
|
+
|
|
|
+#define __PAGE_PROT_UWAUX 0x010
|
|
|
+#define __PAGE_PROT_USER 0x020
|
|
|
+#define __PAGE_PROT_WRITE 0x040
|
|
|
|
|
|
#define _PAGE_PRESENTV (_PAGE_PRESENT|_PAGE_VALID)
|
|
|
-#define _PAGE_PROTNONE 0x000 /* If not present */
|
|
|
|
|
|
#ifndef __ASSEMBLY__
|
|
|
|