summaryrefslogtreecommitdiffstats
path: root/arch/x86/include
diff options
context:
space:
mode:
authorThomas Gleixner2009-08-27 17:05:47 +0200
committerThomas Gleixner2009-08-27 17:06:24 +0200
commit4152f93508b184a85a975810b2cc3dc5c597cf57 (patch)
tree19dff39aa185f18ed662ab5802d1e873aea5ab44 /arch/x86/include
parentMerge branch 'x86/paravirt' into x86/cleanups (diff)
parentinit: Move sched_clock_init after late_time_init (diff)
downloadkernel-qcow2-linux-4152f93508b184a85a975810b2cc3dc5c597cf57.tar.gz
kernel-qcow2-linux-4152f93508b184a85a975810b2cc3dc5c597cf57.tar.xz
kernel-qcow2-linux-4152f93508b184a85a975810b2cc3dc5c597cf57.zip
Merge branch 'sched/clock' into x86/cleanups
Reason: The tsc init cleanup depends on sched_clock_init moving past late_time_init. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/include')
-rw-r--r--arch/x86/include/asm/pgtable.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h
index 3cc06e3fceb8..16748077559a 100644
--- a/arch/x86/include/asm/pgtable.h
+++ b/arch/x86/include/asm/pgtable.h
@@ -2,6 +2,7 @@
#define _ASM_X86_PGTABLE_H
#include <asm/page.h>
+#include <asm/e820.h>
#include <asm/pgtable_types.h>
@@ -269,10 +270,17 @@ static inline pgprot_t pgprot_modify(pgprot_t oldprot, pgprot_t newprot)
#define canon_pgprot(p) __pgprot(massage_pgprot(p))
-static inline int is_new_memtype_allowed(unsigned long flags,
- unsigned long new_flags)
+static inline int is_new_memtype_allowed(u64 paddr, unsigned long size,
+ unsigned long flags,
+ unsigned long new_flags)
{
/*
+ * PAT type is always WB for ISA. So no need to check.
+ */
+ if (is_ISA_range(paddr, paddr + size - 1))
+ return 1;
+
+ /*
* Certain new memtypes are not allowed with certain
* requested memtype:
* - request is uncached, return cannot be write-back