On Mon, Feb 26, 2024 at 07:57:56PM +0800, Xi Ruoyao wrote: > On Mon, 2024-02-26 at 10:20 +0100, Arnd Bergmann wrote: > > /* snip */ > > > > > > Or maybe we can just introduce a new AT_something to make statx > > > completely ignore pathname but behave like AT_EMPTY_PATH + "". I'm not at all convinced about doing custom semantics for this. > > I think this is better than going back to fstat64_time64(), but > > it's still not great because > > > > - all the reserved flags on statx() are by definition incompatible > > with existing kernels that return -EINVAL for any flag they do > > not recognize. > > Oops, we are deeming passing undefined flags in "mask" undefined > behavior but not "flags", thus "wild software" may be relying on EINVAL > for invalid flags... We *might* make this new AT_xxx a bit in mask > instead of flags but it would be very dirty IMO. Uhm, no. AT_* flags have nothing to do in statx()'s mask argument at all.