[PATCH] uapi/fcntl: conditionally define AT_RENAME* macros
From: Randy Dunlap <hidden>
Date: 2025-08-24 22:10:57
Also in:
linux-fsdevel, lkml
Don't define the AT_RENAME_* macros when __USE_GNU is defined since
/usr/include/stdio.h defines them in that case (i.e. when _GNU_SOURCE
is defined, which causes __USE_GNU to be defined).
Having them defined in 2 places causes build warnings (duplicate
definitions) in both samples/watch_queue/watch_test.c and
samples/vfs/test-statx.c.
Fixes: b4fef22c2fb9 ("uapi: explain how per-syscall AT_* flags should be allocated")
Signed-off-by: Randy Dunlap <redacted>
---
Cc: Amir Goldstein <amir73il@gmail.com>
Cc: Jeff Layton <jlayton@kernel.org>
Cc: Chuck Lever <redacted>
Cc: Alexander Aring <alex.aring@gmail.com>
Cc: Josef Bacik <josef@toxicpanda.com>
Cc: Aleksa Sarai <redacted>
Cc: Jan Kara <jack@suse.cz>
Cc: Christian Brauner <brauner@kernel.org>
Cc: linux-fsdevel@vger.kernel.org
CC: linux-api@vger.kernel.org
include/uapi/linux/fcntl.h | 2 ++
1 file changed, 2 insertions(+)
--- linux-next-20250819.orig/include/uapi/linux/fcntl.h
+++ linux-next-20250819/include/uapi/linux/fcntl.h@@ -155,10 +155,12 @@ * as possible, so we can use them for generic bits in the future if necessary. */ +#ifndef __USE_GNU /* Flags for renameat2(2) (must match legacy RENAME_* flags). */ #define AT_RENAME_NOREPLACE 0x0001 #define AT_RENAME_EXCHANGE 0x0002 #define AT_RENAME_WHITEOUT 0x0004 +#endif /* Flag for faccessat(2). */ #define AT_EACCESS 0x200 /* Test access permitted for