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: <20251203193225.GB12995@1wt.eu>
Date: Wed, 3 Dec 2025 20:32:25 +0100
From: Willy Tarreau <w@....eu>
To: Thomas Weißschuh <linux@...ssschuh.net>
Cc: Alexei Starovoitov <ast@...nel.org>, Heiko Carstens <hca@...ux.ibm.com>,
        Arnd Bergmann <arnd@...db.de>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] tools/nolibc: always use 64-bit mode for s390 header
 checks

Hi Thomas,

On Wed, Dec 03, 2025 at 08:08:00PM +0100, Thomas Weißschuh wrote:
> 32-bit s390 support was recently removed from nolibc.
> If the compiler defaults to 32-bit during the header checks, they fail.
> 
> Make sure to always use 64-bit mode for s390 heafer checks.
> 
> Fixes: 169ebcbb9082 ("tools: Remove s390 compat support")
> Signed-off-by: Thomas Weißschuh <linux@...ssschuh.net>
> ---
>  tools/include/nolibc/Makefile | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/include/nolibc/Makefile b/tools/include/nolibc/Makefile
> index 143c2d2c2ba6..ecc660a2433c 100644
> --- a/tools/include/nolibc/Makefile
> +++ b/tools/include/nolibc/Makefile
> @@ -107,9 +107,12 @@ headers_standalone: headers
>  	$(Q)$(MAKE) -C $(srctree) headers
>  	$(Q)$(MAKE) -C $(srctree) headers_install INSTALL_HDR_PATH=$(OUTPUT)sysroot
>  
> +CFLAGS_s390 := -m64
> +CFLAGS := $(CFLAGS_$(ARCH))
> +
>  headers_check: headers_standalone
>  	$(Q)for header in $(filter-out crt.h std.h,$(all_files)); do \
> -		$(CC) $(CLANG_CROSS_FLAGS) -Wall -Werror -nostdinc -fsyntax-only -x c /dev/null \
> +		$(CC) $(CFLAGS) $(CLANG_CROSS_FLAGS) -Wall -Werror -nostdinc -fsyntax-only -x c /dev/null \
>  			-I$(or $(objtree),$(srctree))/usr/include -include $$header -include $$header || exit 1; \
>  	done
>  

Interesrting, it reminded me something, I was sure that we had been
forcing that one earlier for the case of compilers defaulting to 32-bits,
but maybe that was a side effect of us forcing it on other archs. Ah I've
found it now it's the commit that introduced s390 support in fact that
Brought -m64 from the start, and it was for the test suite:

  0043e6f21dbe ("selftests/nolibc: add s390 support")

In any case I'm now seeing that Heiko confirmed it as well, so FWIW:

Acked-by: Willy Tarreau <w@....eu>

Thanks,
Willy

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ