lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 13 Apr 2017 13:35:47 +1000
From:   Michael Ellerman <>
To:     Benjamin Herrenschmidt <>,
        Lorenzo Pieralisi <>
        Bjorn Helgaas <>,
        Paul Mackerras <>
Subject: Re: [PATCH v3 21/32] powerpc: include default ioremap_nopost() implementation

Benjamin Herrenschmidt <> writes:

> On Tue, 2017-04-11 at 15:24 +0100, Lorenzo Pieralisi wrote:
>> Ok, point taken. BTW, may I ask you guys to have a look into this
>> please ?
>> It is a side effect of this thread (v2), not sure why <asm/io.h>
>> on powerpc has to include <linux/io.h>.
> Not sure how we ended up with that... it's odd indeed.
> Michael ? Any reason we can't just remove it ?

No ... idea.

Looks like it was added in:

commit b41e5fffe8b81fc939067d8c1c195cc79115d5a3
Author:     Emil Medve <>
AuthorDate: Sat May 3 06:34:04 2008 +1000
Commit:     Paul Mackerras <>
CommitDate: Mon May 5 16:47:14 2008 +1000

    [POWERPC] devres: Add devm_ioremap_prot()
    We provide an ioremap_flags, so this provides a corresponding
    devm_ioremap_prot.  The slight name difference is at Ben
    Herrenschmidt's request as he plans on changing ioremap_flags to
    ioremap_prot in the future.
    Signed-off-by: Emil Medve <>
    Signed-off-by: Kumar Gala <>
    Acked-by: Tejun Heo <>
    Cc: Benjamin Herrenschmidt <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Paul Mackerras <>

diff --git a/include/asm-powerpc/io.h b/include/asm-powerpc/io.h
index afae0697e8ce..e0062d73db1c 100644
--- a/include/asm-powerpc/io.h
+++ b/include/asm-powerpc/io.h
@@ -18,6 +18,9 @@ extern int check_legacy_ioport(unsigned long base_port);
 #define _PNPWRP		0xa79
 #define PNPBIOS_BASE	0xf000
+#include <linux/device.h>
+#include <linux/io.h>
 #include <linux/compiler.h>
 #include <asm/page.h>
 #include <asm/byteorder.h>
@@ -744,6 +747,9 @@ static inline void * bus_to_virt(unsigned long address)
 #define clrsetbits_8(addr, clear, set) clrsetbits(8, addr, clear, set)
+void __iomem *devm_ioremap_prot(struct device *dev, resource_size_t offset,
+				size_t size, unsigned long flags);
 #endif /* __KERNEL__ */
 #endif /* _ASM_POWERPC_IO_H */

I'll try removing it and see what breaks.


Powered by blists - more mailing lists