summaryrefslogtreecommitdiff
path: root/arch/x86/mm/ioremap_64.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2008-01-30 12:34:05 (GMT)
committerIngo Molnar <mingo@elte.hu>2008-01-30 12:34:05 (GMT)
commit1aaf74e919be54be0023c3124923fb537c7fb772 (patch)
tree7e84ffdb346a4b1f8efa240570549e3bf74bb2a8 /arch/x86/mm/ioremap_64.c
parenta40343497e8983cdf07fde99c9081ee62b96f745 (diff)
downloadlinux-fsl-qoriq-1aaf74e919be54be0023c3124923fb537c7fb772.tar.xz
x86: fix ioremap pgprot inconsistency
The pgprot flags which are handed into ioremap_page_range() are different to those which are set in change_page_attr(). The ioremap_page_range flags are executable, while the c_p_a flags are not. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/mm/ioremap_64.c')
-rw-r--r--arch/x86/mm/ioremap_64.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/mm/ioremap_64.c b/arch/x86/mm/ioremap_64.c
index 0a05f02..a375561 100644
--- a/arch/x86/mm/ioremap_64.c
+++ b/arch/x86/mm/ioremap_64.c
@@ -53,7 +53,7 @@ ioremap_change_attr(unsigned long phys_addr, unsigned long size,
* Must use a address here and not struct page because the phys addr
* can be a in hole between nodes and not have an memmap entry.
*/
- err = change_page_attr_addr(vaddr,npages,__pgprot(__PAGE_KERNEL|flags));
+ err = change_page_attr_addr(vaddr,npages,MAKE_GLOBAL(__PAGE_KERNEL|flags));
if (!err)
global_flush_tlb();
}
@@ -91,7 +91,7 @@ void __iomem * __ioremap(unsigned long phys_addr, unsigned long size, unsigned l
if (phys_addr >= ISA_START_ADDRESS && last_addr < ISA_END_ADDRESS)
return (__force void __iomem *)phys_to_virt(phys_addr);
- pgprot = __pgprot(__PAGE_KERNEL_EXEC | _PAGE_GLOBAL | flags);
+ pgprot = MAKE_GLOBAL(__PAGE_KERNEL | flags);
/*
* Mappings have to be page-aligned
*/