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: <20250127210936.GA3733@ax162>
Date: Mon, 27 Jan 2025 14:09:36 -0700
From: Nathan Chancellor <nathan@...nel.org>
To: Alexander Gordeev <agordeev@...ux.ibm.com>
Cc: Heiko Carstens <hca@...ux.ibm.com>, Vasily Gorbik <gor@...ux.ibm.com>,
	Christian Borntraeger <borntraeger@...ux.ibm.com>,
	Sven Schnelle <svens@...ux.ibm.com>, linux-s390@...r.kernel.org,
	linux-kernel@...r.kernel.org, stable@...r.kernel.org
Subject: Re: [PATCH] s390: Add '-std=gnu11' to decompressor and purgatory
 CFLAGS

On Thu, Jan 23, 2025 at 11:40:40AM +0100, Alexander Gordeev wrote:
> On Wed, Jan 22, 2025 at 07:54:27PM -0700, Nathan Chancellor wrote:
> > GCC changed the default C standard dialect from gnu17 to gnu23,
> > which should not have impacted the kernel because it explicitly requests
> > the gnu11 standard in the main Makefile. However, there are certain
> > places in the s390 code that use their own CFLAGS without a '-std='
> > value, which break with this dialect change because of the kernel's own
> > definitions of bool, false, and true conflicting with the C23 reserved
> > keywords.
> > 
> >   include/linux/stddef.h:11:9: error: cannot use keyword 'false' as enumeration constant
> >      11 |         false   = 0,
> >         |         ^~~~~
> >   include/linux/stddef.h:11:9: note: 'false' is a keyword with '-std=c23' onwards
> >   include/linux/types.h:35:33: error: 'bool' cannot be defined via 'typedef'
> >      35 | typedef _Bool                   bool;
> >         |                                 ^~~~
> >   include/linux/types.h:35:33: note: 'bool' is a keyword with '-std=c23' onwards
> > 
> > Add '-std=gnu11' to the decompressor and purgatory CFLAGS to eliminate
> > these errors and make the C standard version of these areas match the
> > rest of the kernel.
> > 
> > Cc: stable@...r.kernel.org
> > Signed-off-by: Nathan Chancellor <nathan@...nel.org>
> ...
> > ---
> >  arch/s390/Makefile           | 2 +-
> >  arch/s390/purgatory/Makefile | 2 +-
> >  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> Applied, thanks!

I noticed that a Fixes tag got added to this change in the s390 tree but
I do not think it is correct, as I would expect this issue to be visible
prior to that change. I think this will need to go back to all supported
stable versions to allow building with GCC 15. It seems like maybe the
tags from the parent commit (0a89123deec3) made it into my change?

Cheers,
Nathan

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ