On Thu, Oct 18, 2018 at 4:32 PM, Miklos Szeredi <miklos@xxxxxxxxxx> wrote: > On Thu, Oct 18, 2018 at 3:15 PM, Florian Weimer <fw@xxxxxxxxxxxxx> wrote: >> * Miklos Szeredi: >> >>> #define STATX__RESERVED 0x80000000U /* Reserved for future struct statx expansion */ >> >> What about this? Isn't it similar to STATX_ALL in the sense that we >> don't know yet what it will mean? > > Kernel will return -EINVAL if request_mask contains STATX__RESERVED, > so it's definitely different from other flag values. > > Specifying this in the UAPI sort of implies that other flag values > will *not* need a struct statx expansion, so it's safe to pass in any > random value not containing STATX__RESERVED on any past or future > kernel and it will not write beyond the current struct statx boundary. > Not sure if that's a useful thing or not, but it's not actively > harmful, like the STATX_ALL flag. In other words, if STATX_ALL was defined as 0x7fffffff, then that would mean the same thing, and I wouldn't complain about it. Thanks, Miklos