提交 4138cc34 编写于 作者: S Siddha, Suresh B 提交者: Ingo Molnar

x86: set strong uncacheable where UC is really desired

Also use _PAGE_PWT for all the mappings which need uncache mapping.
Instead of existing PAT2 which is UC- (and can be overwritten by MTRRs),
we now use PAT3 which is strong uncacheable.

This makes it consistent with pgprot_noncached()
Signed-off-by: NSuresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: NIngo Molnar <mingo@elte.hu>
Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
上级 fbd3bfd8
...@@ -119,7 +119,7 @@ EXPORT_SYMBOL(__ioremap); ...@@ -119,7 +119,7 @@ EXPORT_SYMBOL(__ioremap);
void __iomem *ioremap_nocache (unsigned long phys_addr, unsigned long size) void __iomem *ioremap_nocache (unsigned long phys_addr, unsigned long size)
{ {
unsigned long last_addr; unsigned long last_addr;
void __iomem *p = __ioremap(phys_addr, size, _PAGE_PCD); void __iomem *p = __ioremap(phys_addr, size, _PAGE_PCD | _PAGE_PWT);
if (!p) if (!p)
return p; return p;
......
...@@ -138,7 +138,7 @@ EXPORT_SYMBOL(__ioremap); ...@@ -138,7 +138,7 @@ EXPORT_SYMBOL(__ioremap);
void __iomem *ioremap_nocache (unsigned long phys_addr, unsigned long size) void __iomem *ioremap_nocache (unsigned long phys_addr, unsigned long size)
{ {
return __ioremap(phys_addr, size, _PAGE_PCD); return __ioremap(phys_addr, size, _PAGE_PCD | _PAGE_PWT);
} }
EXPORT_SYMBOL(ioremap_nocache); EXPORT_SYMBOL(ioremap_nocache);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册