From: Thomas Gleixner Date: Wed, 30 Jan 2008 12:34:05 +0000 (+0100) Subject: x86: __iomem annotations X-Git-Tag: v2.6.25-rc1~1143^2~62 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=4b40fcee131847069543cc60a3a79887743c53db;p=karo-tx-linux.git x86: __iomem annotations Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar --- diff --git a/arch/x86/mm/ioremap_32.c b/arch/x86/mm/ioremap_32.c index ae7e55c8c647..5273ac4aa96a 100644 --- a/arch/x86/mm/ioremap_32.c +++ b/arch/x86/mm/ioremap_32.c @@ -81,7 +81,7 @@ void __iomem *__ioremap(unsigned long phys_addr, unsigned long size, * Don't remap the low PCI/ISA area, it's always mapped.. */ if (phys_addr >= ISA_START_ADDRESS && last_addr < ISA_END_ADDRESS) - return (void __iomem *) phys_to_virt(phys_addr); + return (__force void __iomem *)phys_to_virt(phys_addr); /* * Don't allow anybody to remap normal RAM that we're using.. diff --git a/arch/x86/mm/ioremap_64.c b/arch/x86/mm/ioremap_64.c index bb9246c4a07b..e79d2b353de0 100644 --- a/arch/x86/mm/ioremap_64.c +++ b/arch/x86/mm/ioremap_64.c @@ -70,7 +70,7 @@ static int ioremap_change_attr(unsigned long phys_addr, unsigned long size, void __iomem *__ioremap(unsigned long phys_addr, unsigned long size, unsigned long flags) { - void *addr; + void __iomem *addr; struct vm_struct *area; unsigned long offset, last_addr; pgprot_t pgprot; @@ -101,7 +101,7 @@ void __iomem *__ioremap(unsigned long phys_addr, unsigned long size, if (!area) return NULL; area->phys_addr = phys_addr; - addr = area->addr; + addr = (void __iomem *) area->addr; if (ioremap_page_range((unsigned long)addr, (unsigned long)addr + size, phys_addr, pgprot)) { remove_vm_area((void *)(PAGE_MASK & (unsigned long) addr)); @@ -111,7 +111,7 @@ void __iomem *__ioremap(unsigned long phys_addr, unsigned long size, vunmap(addr); return NULL; } - return (__force void __iomem *) (offset + (char *)addr); + return (void __iomem *) (offset + (char __iomem *)addr); } EXPORT_SYMBOL(__ioremap); @@ -152,7 +152,7 @@ void iounmap(volatile void __iomem *addr) { struct vm_struct *p, *o; - if (addr <= high_memory) + if ((void __force *)addr <= high_memory) return; if (addr >= phys_to_virt(ISA_START_ADDRESS) && addr < phys_to_virt(ISA_END_ADDRESS))