Re: Building a allyesconfig kernel fails because macros are being redefined

From: Nathan Chancellor

Date: Sun Oct 12 2025 - 21:24:26 EST


On Mon, Oct 13, 2025 at 01:47:54AM +0200, Jesper Juhl wrote:
> My current git HEAD is at 3a8660878839faadb4f1a6dd72c3179c1df56787
>
> If I do :
> make mrproper
> make allyesconfig
> make -j 33
> it eventually fails with :
>
> ...
> INSTALL libsubcmd_headers
> CALL scripts/checksyscalls.sh
> CC [U] samples/vfs/test-statx
> CC [U] samples/watch_queue/watch_test
> In file included from samples/vfs/test-statx.c:23:
> usr/include/linux/fcntl.h:160:9: error: ‘AT_RENAME_NOREPLACE’
> redefined [-Werror]
> 160 | #define AT_RENAME_NOREPLACE 0x0001
> | ^~~~~~~~~~~~~~~~~~~
> In file included from samples/vfs/test-statx.c:13:
> /usr/include/stdio.h:171:10: note: this is the location of the
> previous definition
> 171 | # define AT_RENAME_NOREPLACE RENAME_NOREPLACE
> | ^~~~~~~~~~~~~~~~~~~
> usr/include/linux/fcntl.h:161:9: error: ‘AT_RENAME_EXCHANGE’ redefined [-Werror]
> 161 | #define AT_RENAME_EXCHANGE 0x0002
> | ^~~~~~~~~~~~~~~~~~
> /usr/include/stdio.h:173:10: note: this is the location of the
> previous definition
> 173 | # define AT_RENAME_EXCHANGE RENAME_EXCHANGE
> | ^~~~~~~~~~~~~~~~~~
> usr/include/linux/fcntl.h:162:9: error: ‘AT_RENAME_WHITEOUT’ redefined [-Werror]
> 162 | #define AT_RENAME_WHITEOUT 0x0004
> | ^~~~~~~~~~~~~~~~~~
> /usr/include/stdio.h:175:10: note: this is the location of the
> previous definition
> 175 | # define AT_RENAME_WHITEOUT RENAME_WHITEOUT
> | ^~~~~~~~~~~~~~~~~~

This is a bug in glibc:

https://inbox.sourceware.org/libc-alpha/20250823052706.GA4056405@ax162/
https://sourceware.org/git?p=glibc.git;a=commit;h=1166170d95863e5a6f8121a5ca9d97713f524f49

Cheers,
Nathan