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] [day] [month] [year] [list]
Date:   Sun, 7 Aug 2022 21:40:40 +0200
From:   Arnd Bergmann <arnd@...db.de>
To:     Randy Dunlap <rdunlap@...radead.org>
Cc:     linux-kernel@...r.kernel.org,
        Paul Walmsley <paul.walmsley@...ive.com>,
        Palmer Dabbelt <palmer@...belt.com>,
        Albert Ou <aou@...s.berkeley.edu>,
        linux-riscv@...ts.infradead.org, Guo Ren <guoren@...nel.org>,
        Arnd Bergmann <arnd@...db.de>
Subject: Re: [PATCH] riscv: compat: make __ARCH_WANT_COMPAT_FADVISE64_64 conditional

On Sun, Aug 7, 2022 at 7:28 PM Randy Dunlap <rdunlap@...radead.org> wrote:
>
> When CONFIG_ADVISE_SYSCALLS is not set/enabled and CONFIG_COMPAT is
> set/enabled, the riscv compat_syscall_table references
> 'compat_sys_fadvise64_64', which is not defined:
>
> riscv64-linux-ld: arch/riscv/kernel/compat_syscall_table.o:(.rodata+0x6f8):
> undefined reference to `compat_sys_fadvise64_64'
>
> Only set __ARCH_WANT_COMPAT_FADVISE64_64 when CONFIG_ADVISE_SYSCALLS
> is set.
>
> Fixes: 59c10c52f573 ("riscv: compat: syscall: Add compat_sys_call_table implementation")
> Signed-off-by: Randy Dunlap <rdunlap@...radead.org>
> Cc: Paul Walmsley <paul.walmsley@...ive.com>
> Cc: Palmer Dabbelt <palmer@...belt.com>
> Cc: Albert Ou <aou@...s.berkeley.edu>
> Cc: linux-riscv@...ts.infradead.org
> Cc: Guo Ren <guoren@...nel.org>
> Cc: Arnd Bergmann <arnd@...db.de>
> ---
>  arch/riscv/include/asm/unistd.h |    2 ++
>  1 file changed, 2 insertions(+)
>
> --- a/arch/riscv/include/asm/unistd.h
> +++ b/arch/riscv/include/asm/unistd.h
> @@ -18,8 +18,10 @@
>  #define __ARCH_WANT_COMPAT_PWRITE64
>  #define __ARCH_WANT_COMPAT_SYNC_FILE_RANGE
>  #define __ARCH_WANT_COMPAT_READAHEAD
> +#ifdef CONFIG_ADVISE_SYSCALLS
>  #define __ARCH_WANT_COMPAT_FADVISE64_64
>  #endif
> +#endif

I think it's better to add this to kernel/sys_ni.c next to
COND_SYSCALL(fadvise64_64), to make it more consistent
with the other conditionally enabled syscalls.

        Arnd

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ