lists.openwall.net   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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <15b87c5f-92de-4201-9c67-a93d5dcefe68@app.fastmail.com>
Date: Mon, 03 Feb 2025 09:18:33 +0100
From: "Arnd Bergmann" <arnd@...db.de>
To: Thomas Weißschuh <thomas.weissschuh@...utronix.de>,
 "Kees Cook" <kees@...nel.org>, "Palmer Dabbelt" <palmer@...osinc.com>,
 "Andrew Morton" <akpm@...ux-foundation.org>
Cc: Linux-Arch <linux-arch@...r.kernel.org>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] iomap: Fix -Wmissing-prototypes on UM

On Mon, Feb 3, 2025, at 08:26, Thomas Weißschuh wrote:
> Building lib/iomap.o on UM triggers warnings about missing prototypes.
> These prototypes should be defined by asm-generic/iomap.h, depending on
> other symbols. For example "ioread64_lo_hi" is based on "readq".
> However the generic variants of those tested symbols are defined in
> asm-generic/io.h, only after asm-generic/iomap.h has already been
> included, breaking the ifdef logic.

Sorry I never took the time to fix this so far.

> --- a/include/asm-generic/io.h
> +++ b/include/asm-generic/io.h
> @@ -13,10 +13,6 @@
>  #include <linux/types.h>
>  #include <linux/instruction_pointer.h>
> 
> -#ifdef CONFIG_GENERIC_IOMAP
> -#include <asm-generic/iomap.h>
> -#endif
> -
>  #include <asm/mmiowb.h>
>  #include <asm-generic/pci_iomap.h>
> 
> @@ -1250,4 +1246,8 @@ extern int devmem_is_allowed(unsigned long pfn);
> 
>  #endif /* __KERNEL__ */
> 
> +#ifdef CONFIG_GENERIC_IOMAP
> +#include <asm-generic/iomap.h>
> +#endif
> +
>  #endif /* __ASM_GENERIC_IO_H */

I have not tried it yet, but I suspect this is not the correct
fix here. Unfortunately the indirect header inclusions in this
file are way too complicated with corner cases in various
architectures. How much testing have you given your patch
across other targets? I think the last time we tried to address
it, we broke mips or parisc.

    Arnd

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ