[patch 6/8] x86 PAT: change pgprot_noncached to uc_minus instead of strong uc
From: Venkatesh Pallipadi
Date: Wed Nov 12 2008 - 18:23:38 EST
Make pgprot_noncached uc_minus instead of strong UC. This will make
pgprot_noncached to be in line with ioremap_nocache() and all the other
APIs that map page uc_minus on uc request.
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>
Signed-off-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
---
arch/x86/include/asm/pgtable.h | 8 ++++++++
arch/x86/include/asm/pgtable_32.h | 9 ---------
arch/x86/include/asm/pgtable_64.h | 6 ------
3 files changed, 8 insertions(+), 15 deletions(-)
Index: tip/arch/x86/include/asm/pgtable.h
===================================================================
--- tip.orig/arch/x86/include/asm/pgtable.h 2008-11-06 15:58:21.000000000 -0800
+++ tip/arch/x86/include/asm/pgtable.h 2008-11-10 09:44:38.000000000 -0800
@@ -158,6 +158,14 @@
#define PGD_IDENT_ATTR 0x001 /* PRESENT (no other attributes) */
#endif
+/*
+ * Macro to mark a page protection value as UC-
+ */
+#define pgprot_noncached(prot) \
+ ((boot_cpu_data.x86 > 3) \
+ ? (__pgprot(pgprot_val(prot) | _PAGE_CACHE_UC_MINUS)) \
+ : (prot))
+
#ifndef __ASSEMBLY__
/*
Index: tip/arch/x86/include/asm/pgtable_32.h
===================================================================
--- tip.orig/arch/x86/include/asm/pgtable_32.h 2008-11-06 09:44:12.000000000 -0800
+++ tip/arch/x86/include/asm/pgtable_32.h 2008-11-06 16:17:11.000000000 -0800
@@ -107,15 +107,6 @@ extern unsigned long pg0[];
#endif
/*
- * Macro to mark a page protection value as "uncacheable".
- * On processors which do not support it, this is a no-op.
- */
-#define pgprot_noncached(prot) \
- ((boot_cpu_data.x86 > 3) \
- ? (__pgprot(pgprot_val(prot) | _PAGE_PCD | _PAGE_PWT)) \
- : (prot))
-
-/*
* Conversion functions: convert a page and protection to a page entry,
* and a page entry and page directory to the page they refer to.
*/
Index: tip/arch/x86/include/asm/pgtable_64.h
===================================================================
--- tip.orig/arch/x86/include/asm/pgtable_64.h 2008-11-06 09:44:12.000000000 -0800
+++ tip/arch/x86/include/asm/pgtable_64.h 2008-11-06 16:17:11.000000000 -0800
@@ -183,12 +183,6 @@ static inline int pmd_bad(pmd_t pmd)
#define pages_to_mb(x) ((x) >> (20 - PAGE_SHIFT)) /* FIXME: is this right? */
/*
- * Macro to mark a page protection value as "uncacheable".
- */
-#define pgprot_noncached(prot) \
- (__pgprot(pgprot_val((prot)) | _PAGE_PCD | _PAGE_PWT))
-
-/*
* Conversion functions: convert a page and protection to a page entry,
* and a page entry and page directory to the page they refer to.
*/
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/