What if the xstat() and struct xstat eventually becomes what userspace uses as stat() (as a wrapper) and struct stat (if such a thing is possible with glibc versioning)?
It's certainly possible with symbol versioning, though it seems much more likely that we'd stick with the existing struct stat and stat* interfaces and only have the implementation using statx underneath (e.g. for new machines or kernel ABIs where the kernel stops providing any calls except for statxat), at least for the foreseeable future.
Do older programs that think they're using stat() and don't know about the extra fields available expect to see a useful value in st_ino?
POSIX requires that st_ino have a useful value for the standard *stat calls.
Thanks, Roland