summaryrefslogtreecommitdiffstats
path: root/arch/x86/mm/ioremap_32.c
diff options
context:
space:
mode:
authorThomas Gleixner2008-01-30 13:34:05 +0100
committerIngo Molnar2008-01-30 13:34:05 +0100
commite4c1b977f0036c00ebabb60375cb63d0de9d43fa (patch)
tree23a885cd5d8e0f58050550245bccc697a57c92cd /arch/x86/mm/ioremap_32.c
parentx86: __iomem annotations (diff)
downloadkernel-qcow2-linux-e4c1b977f0036c00ebabb60375cb63d0de9d43fa.tar.gz
kernel-qcow2-linux-e4c1b977f0036c00ebabb60375cb63d0de9d43fa.tar.xz
kernel-qcow2-linux-e4c1b977f0036c00ebabb60375cb63d0de9d43fa.zip
x86: use remove_vm_are in ioremap_32 error path
When ioremap_page_range fails, then we can use remove_vm_area instead of vunmap safely. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/mm/ioremap_32.c')
-rw-r--r--arch/x86/mm/ioremap_32.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/mm/ioremap_32.c b/arch/x86/mm/ioremap_32.c
index 5273ac4aa96a..4d919c37d1d6 100644
--- a/arch/x86/mm/ioremap_32.c
+++ b/arch/x86/mm/ioremap_32.c
@@ -118,7 +118,7 @@ void __iomem *__ioremap(unsigned long phys_addr, unsigned long size,
addr = (void __iomem *) area->addr;
if (ioremap_page_range((unsigned long)addr, (unsigned long)addr + size,
phys_addr, pgprot)) {
- vunmap((void __force *) addr);
+ remove_vm_area((void *)(PAGE_MASK & (unsigned long) addr));
return NULL;
}