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]
Date:   Thu, 02 Feb 2023 08:45:29 +0100
From:   "Arnd Bergmann" <arnd@...db.de>
To:     "Randy Dunlap" <rdunlap@...radead.org>,
        linux-kernel@...r.kernel.org
Cc:     "Alexander Viro" <viro@...iv.linux.org.uk>,
        "Yoshinori Sato" <ysato@...rs.sourceforge.jp>,
        "Rich Felker" <dalias@...c.org>, linux-sh@...r.kernel.org,
        "John Paul Adrian Glaubitz" <glaubitz@...sik.fu-berlin.de>,
        "Andrew Morton" <akpm@...ux-foundation.org>
Subject: Re: [PATCH v2] sh: implicit access_ok() needs an #include

On Thu, Feb 2, 2023, at 06:31, Randy Dunlap wrote:
> Building arch/sh/ has a build error/warning that is fixed by
> adding an #include of a header file.
>
> ../arch/sh/include/asm/checksum_32.h: In function 
> 'csum_and_copy_from_user':
> ../arch/sh/include/asm/checksum_32.h:53:14: error: implicit declaration 
> of function 'access_ok' [-Werror=implicit-function-declaration]
>    53 |         if (!access_ok(src, len))
>       |              ^~~~~~~~~
>
> Fixes: 7fe8970a78a1 ("sh32: convert to csum_and_copy_from_user()")
> Signed-off-by: Randy Dunlap <rdunlap@...radead.org>
> Cc: Al Viro <viro@...iv.linux.org.uk>
> Cc: Yoshinori Sato <ysato@...rs.sourceforge.jp>
> Cc: Rich Felker <dalias@...c.org>
> Cc: linux-sh@...r.kernel.org
> Cc: John Paul Adrian Glaubitz <glaubitz@...sik.fu-berlin.de>
> Cc: Arnd Bergmann <arnd@...db.de>
> Cc: Andrew Morton <akpm@...ux-foundation.org>
> ---
> v2: add Subject: and patch description

Thanks for the fix!

>
>  arch/sh/include/asm/checksum_32.h |    1 +
>  1 file changed, 1 insertion(+)
>
> diff -- a/arch/sh/include/asm/checksum_32.h b/arch/sh/include/asm/checksum_32.h
> --- a/arch/sh/include/asm/checksum_32.h
> +++ b/arch/sh/include/asm/checksum_32.h
> @@ -7,6 +7,7 @@
>   */
> 
>  #include <linux/in6.h>
> +#include <asm-generic/access_ok.h>

This will work correctly, but it is not the intended usage of the
header. Anything in asm-generic/*.h should only be included by
a particular header, usually the asm/*.h with the same name or in this
case the asm/uaccess.h header.

I think the correct fix here is to include asm/uaccess.h instead
of asm-generic/access_ok.h.

      Arnd

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ