summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2021-09-20 23:32:49 +0200
committerRichard Weinberger <richard@nod.at>2021-12-21 21:31:08 +0100
commit5f174ec3c1d62013f86db6597249174d8cb227b2 (patch)
tree541bb933e1a7610832c0931507e06bb0c7acca8e
parentum: move amd64 variant of mmap(2) to arch/x86/um/syscalls_64.c (diff)
downloadlinux-5f174ec3c1d62013f86db6597249174d8cb227b2.tar.xz
linux-5f174ec3c1d62013f86db6597249174d8cb227b2.zip
logic_io instance of iounmap() needs volatile on argument
... same as the rest of implementations Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Richard Weinberger <richard@nod.at>
-rw-r--r--include/asm-generic/logic_io.h2
-rw-r--r--lib/logic_iomem.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/include/asm-generic/logic_io.h b/include/asm-generic/logic_io.h
index a53116b8c57e..8a59b6e567df 100644
--- a/include/asm-generic/logic_io.h
+++ b/include/asm-generic/logic_io.h
@@ -34,7 +34,7 @@
void __iomem *ioremap(phys_addr_t offset, size_t size);
#define iounmap iounmap
-void iounmap(void __iomem *addr);
+void iounmap(void volatile __iomem *addr);
#define __raw_readb __raw_readb
u8 __raw_readb(const volatile void __iomem *addr);
diff --git a/lib/logic_iomem.c b/lib/logic_iomem.c
index 549b22d4bcde..8c3365f26e51 100644
--- a/lib/logic_iomem.c
+++ b/lib/logic_iomem.c
@@ -76,7 +76,7 @@ static void __iomem *real_ioremap(phys_addr_t offset, size_t size)
return NULL;
}
-static void real_iounmap(void __iomem *addr)
+static void real_iounmap(volatile void __iomem *addr)
{
WARN(1, "invalid iounmap for addr 0x%llx\n",
(unsigned long long)(uintptr_t __force)addr);
@@ -149,7 +149,7 @@ get_area(const volatile void __iomem *addr)
return NULL;
}
-void iounmap(void __iomem *addr)
+void iounmap(volatile void __iomem *addr)
{
struct logic_iomem_area *area = get_area(addr);