This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 1/6] xstat: Add a pair of system calls to make extended file stats available
- From: Andreas Dilger <adilger at dilger dot ca>
- To: David Howells <dhowells at redhat dot com>
- Cc: linux-fsdevel at vger dot kernel dot org,linux-nfs at vger dot kernel dot org,linux-cifs at vger dot kernel dot org,samba-technical at lists dot samba dot org,linux-ext4 at vger dot kernel dot org,wine-devel at winehq dot org,kfm-devel at kde dot org,nautilus-list at gnome dot org,linux-api at vger dot kernel dot org,libc-alpha at sourceware dot org
- Date: Thu, 19 Apr 2012 17:36:32 -0600
- Subject: Re: [PATCH 1/6] xstat: Add a pair of system calls to make extended file stats available
- References: <20120419140558.17272.74360.stgit@warthog.procyon.org.uk> <20120419140612.17272.57774.stgit@warthog.procyon.org.uk>
On 2012-04-19, at 8:06 AM, David Howells wrote:
> Add a pair of system calls to make extended file stats available,
> including file creation time, inode version and data version where available through the underlying filesystem.
>
> The idea was initially proposed as a set of xattrs that could be
> retrieved with getxattr(), but the general preferance proved to be
> for new syscalls with an extended stat structure.
I would comment that it was the opposite. It was originally a
stat()-like extension that degraded into a messy getxattr() mess.
> (2) Lightweight stat: Ask for just those details of interest, and
> allow a netfs (such as NFS) to approximate anything not of
> interest, possibly without going to the server [Trond Myklebust,
> Ulrich Drepper].
This was my original motivation for this functionality, so you can
put my name here also.
> The fields in struct xstat come in a number of classes:
>
> (0) st_dev, st_blksize, st_information.
>
> These are local data and are always available.
For the extra two bits it would cost us, I don't think st_blksize
and st_information should always be returned. st_blksize may be
variable for a distributed filesystem, and some of the fields in
st_information (offline) may not be free to access either.
Cheers, Andreas