]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
sh: Handle unmapping of fixed slots transparently in iounmap().
authorPaul Mundt <lethal@linux-sh.org>
Mon, 18 Jan 2010 12:33:08 +0000 (21:33 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Mon, 18 Jan 2010 12:33:08 +0000 (21:33 +0900)
iounmap() should balance whatever is done by ioremap(). Presently
ioremap() can do any of fixed mappings, PMB mappings, or page table
mappings. Presently only the latter two are handled through the standard
unmap path, so tie in the fixed unmapping, too.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/mm/ioremap.c

index 24f6ba6bff715d4233a5e04dedaea584621db0b3..e8b65f645aeda7de719535b794764436e5447f20 100644 (file)
@@ -142,6 +142,12 @@ void __iounmap(void __iomem *addr)
        if (iomapping_nontranslatable(vaddr))
                return;
 
+       /*
+        * There's no VMA if it's from an early fixed mapping.
+        */
+       if (iounmap_fixed(addr) == 0)
+               return;
+
 #ifdef CONFIG_PMB
        /*
         * Purge any PMB entries that may have been established for this