Re: [PATCH 1/6] statx: Add a system call to make enhanced file info available
From: Christoph Hellwig <hch@infradead.org>
Date: 2016-05-12 09:12:50
Also in:
linux-fsdevel, linux-nfs, lkml
From: Christoph Hellwig <hch@infradead.org>
Date: 2016-05-12 09:12:50
Also in:
linux-fsdevel, linux-nfs, lkml
On Tue, May 10, 2016 at 09:43:43AM +0100, David Howells wrote:
Christoph Hellwig [off-list ref] wrote:quoted
All of these are easily available. But why special case them so that userspace must not ask for them? This makes an otherwise totally regular interface special now. Note that filesystems could always fill it out anyway and set it in the return mask.Because it would be a waste of bits in the mask. Is there a point in having bits that are always going to be set unconditionally when we can just *document* that these few fields are always going to be set.
And what exaxtly is the cost of these bits?
So yes, you can look on it as there are special cases. However, if I can drop
stat emulation support, everything resolves down to the following classes:
(1) Stuff that's unconditional: st_dev, st_blksize, st_information (maybe).
(2) st_mode & S_IFMT. Unconditional or conditional? I'm not sure.
(3) Stuff that's conditional: st_mode & ~S_IFMT, st_rdev, st_ino, ...
Basically everything else.If we at least go down to one set of conditional and one optional that's at least much better than what we currently have.