On Thu, 2024-07-04 at 07:55 +0200, Florian Weimer wrote: > * Xi Ruoyao: > > > Also some bad news: Glibc has this: > > > > #if (__WORDSIZE == 32 \ > > && (!defined __SYSCALL_WORDSIZE || __SYSCALL_WORDSIZE == 32)) \ > > || defined STAT_HAS_TIME32 \ > > || (!defined __NR_newfstatat && !defined __NR_fstatat64) > > # define FSTATAT_USE_STATX 1 > > #else > > # define FSTATAT_USE_STATX 0 > > #endif > > These __NR_* constants come from the glibc headers, not the kernel > headers. In other words, the result of the preprocessor condition does > not depend on the kernel header version. Yes, I realized it in https://sourceware.org/pipermail/libc-alpha/2024- July/157975.html and 2.40 should be fine. But the __NR_* constants will be there once we run update-syscall-lists.py, so we still need to handle the issue in the Glibc 2.41 dev cycle. -- Xi Ruoyao <xry111@xxxxxxxxxxx> School of Aerospace Science and Technology, Xidian University