From: David Howells <dhowells@redhat.com>
To: Dave Chinner <david@fromorbit.com>
Cc: dhowells@redhat.com, linux-fsdevel@vger.kernel.org,
linux-nfs@vger.kernel.org, linux-cifs@vger.kernel.org,
samba-technical@lists.samba.org, linux-ext4@vger.kernel.org,
wine-devel@winehq.org, kfm-devel@kde.org,
nautilus-list@gnome.org, linux-api@vger.kernel.org,
libc-alpha@sourceware.org
Subject: Re: [PATCH 0/6] Extended file stat system call
Date: Fri, 27 Apr 2012 10:39:05 +0100 [thread overview]
Message-ID: <4111.1335519545@redhat.com> (raw)
In-Reply-To: <20120427010610.GE9541@dastard>
Dave Chinner <david@fromorbit.com> wrote:
> If we are adding per-inode flags, then what do we do with filesystem specific
> flags? e.g. XFS has quite a number of per-inode flags that don't align with
> any other filesystem (e.g. filestream allocator, real time file, behaviour
> inheritence flags, etc), but may be useful to retrieve in such a call. We
> currently have an ioctl to get that information from each inode. Have you
> thought about how to handle such flags?
I haven't looked at XFS with regard to xstat as yet, so I'm not sure exactly
which flags you're talking about. The question, though, is what will actually
make use of these flags? Will it just be XFS tools or are they something that
a GUI might make use of?
Either you can add some of them to the ioc flags (which may be impractical, I
grant you) or we'd have to add an arbitrary fs-type specific field and specify
the host fs (the provision of which might not be a bad idea in and of itself)
to tell userspace how to interpret them.
> Along the same lines, filesytsems can have different allocation constraints
> to IO the filesystem block size - ext4 with it's bigalloc hack, XFS with it's
> per-inode extent size hints and the realtime device, etc. Then there's
> optimal IO characteristics (e.g. geometery hints like stripe unit/stripe
> width for the allocation policy of that given file) that applications could
> use if they were present rather than having to expose them through ioctls
> that nobody even knows about...
Yeah... Not representable by one number. You'd have to unset a flag to say
you were providing this information.
However, providing a whole bunch of hints about I/O characteristics is probably
beyond this syscall - especially if it isn't constant over the length of a
file. That's specialist knowledge that most applications don't need to know.
Having a generic way to retrieve it, though, may be a good idea.
OTOH, there's plenty of uncommitted space, so if we can condense the hints down
to something small, we could perhaps add it later - but from your paragraph
above, it doesn't sound like it'll be small.
> Perhaps also exposing the project ID for quota purposes, like we do UID and
> GID. That way we wouldn't need a filesystem specific ioctl to read it....
Is this an XFS only thing? If so, can it be generalised?
David
next prev parent reply other threads:[~2012-04-27 9:39 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-19 14:05 [PATCH 0/6] Extended file stat system call David Howells
2012-04-19 14:06 ` [PATCH 3/6] xstat: AFS: Return extended attributes David Howells
2012-04-19 14:06 ` [PATCH 4/6] xstat: NFS: " David Howells
[not found] ` <20120419140653.17272.95035.stgit-S6HVgzuS8uM4Awkfq6JHfwNdhmdF6hFW@public.gmane.org>
2012-04-19 14:35 ` Myklebust, Trond
2012-04-26 13:52 ` David Howells
2012-04-19 14:07 ` [PATCH 5/6] xstat: CIFS: " David Howells
[not found] ` <20120419140706.17272.72290.stgit-S6HVgzuS8uM4Awkfq6JHfwNdhmdF6hFW@public.gmane.org>
2012-04-19 15:19 ` Steve French
2012-04-19 16:32 ` [PATCH 0/6] Extended file stat system call Roland McGrath
2012-04-19 21:51 ` Paul Eggert
2012-04-19 23:05 ` Roland McGrath
2012-04-26 14:16 ` David Howells
[not found] ` <20173.1335449760-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-26 18:22 ` Roland McGrath
[not found] ` <4F9088D6.9020203-764C0pRuGfqVc3sceRu5cw@public.gmane.org>
2012-04-26 14:04 ` David Howells
[not found] ` <19638.1335449047-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-26 18:24 ` Roland McGrath
2012-04-19 23:29 ` Andreas Dilger
2012-04-26 13:54 ` David Howells
[not found] ` <19184.1335448455-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-26 18:25 ` Roland McGrath
2012-04-27 23:54 ` Paul Eggert
[not found] ` <20120426182524.E5ADF2C0EC-j1d2VQoJOwwHfwO+Tb3JRVaTQe2KTcn/@public.gmane.org>
2012-04-26 21:54 ` David Howells
[not found] ` <9931.1335477281-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-26 22:02 ` Roland McGrath
2012-04-26 22:21 ` Nix
2012-04-26 14:25 ` David Howells
2012-04-26 14:54 ` Steve French
[not found] ` <CAH2r5mv1Lijdwk5zsQwYJr4Etb6fhrRyNXm-iFCQX+HecboGrQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-04-26 15:25 ` Myklebust, Trond
2012-04-26 16:56 ` Steve French
[not found] ` <CAH2r5mt5af-_hxBRKK72iD5Gr99bo91ec78Rov8EGVEx8=21mA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-04-26 17:00 ` Myklebust, Trond
2012-04-26 17:03 ` Steve French
[not found] ` <CAH2r5mvmCfLrxRHje6Wx5X84zxPEHwRMUJGsjvWBujMu7w841w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-04-26 17:06 ` Myklebust, Trond
[not found] ` <1335460011.9701.30.camel-SyLVLa/KEI9HwK5hSS5vWB2eb7JE58TQ@public.gmane.org>
2012-04-26 17:09 ` Steve French
[not found] ` <CAH2r5muXk+frkFz9X523Ny=RMwJGeqOPH75G1ToNa5QoMo5SkQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-04-26 17:10 ` Steve French
2012-04-26 21:57 ` David Howells
[not found] ` <10104.1335477476-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-26 22:05 ` Roland McGrath
[not found] ` <20120426220552.D98D62C0D3-j1d2VQoJOwwHfwO+Tb3JRVaTQe2KTcn/@public.gmane.org>
2012-04-27 0:33 ` Myklebust, Trond
2012-04-27 0:30 ` Myklebust, Trond
2012-04-26 15:52 ` David Howells
2012-04-27 0:29 ` Andreas Dilger
[not found] ` <3F302713-B675-4BAA-B2B7-235E03C5975F-m1MBpc4rdrD3fQ9qLvQP4Q@public.gmane.org>
2012-04-27 9:19 ` David Howells
2012-04-27 9:39 ` David Howells [this message]
[not found] ` <4111.1335519545-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-27 13:13 ` Dave Chinner
2012-04-27 15:10 ` J. Bruce Fields
2012-04-27 19:31 ` Andreas Dilger
2012-04-28 0:58 ` Dave Chinner
2012-05-10 9:51 ` David Howells
[not found] ` <20120419140558.17272.74360.stgit-S6HVgzuS8uM4Awkfq6JHfwNdhmdF6hFW@public.gmane.org>
2012-04-19 14:06 ` [PATCH 1/6] xstat: Add a pair of system calls to make extended file stats available David Howells
2012-04-19 23:36 ` Andreas Dilger
[not found] ` <20120419140612.17272.57774.stgit-S6HVgzuS8uM4Awkfq6JHfwNdhmdF6hFW@public.gmane.org>
2012-04-24 21:29 ` J. Bruce Fields
[not found] ` <20120424212911.GA26073-uC3wQj2KruNg9hUCZPvPmw@public.gmane.org>
2012-04-24 22:08 ` Steve French
2012-04-25 14:44 ` Andreas Dilger
2012-04-26 13:45 ` David Howells
[not found] ` <18765.1335447954-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-26 14:28 ` J. Bruce Fields
2012-04-26 17:06 ` Steve French
2012-04-26 13:32 ` David Howells
[not found] ` <18195.1335447156-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-27 0:51 ` Dave Chinner
2012-04-27 3:11 ` Andreas Dilger
2012-04-26 13:40 ` David Howells
[not found] ` <18533.1335447617-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-04-26 14:23 ` J. Bruce Fields
2012-04-19 14:06 ` [PATCH 2/6] xstat: Ext4: Return extended attributes David Howells
[not found] ` <20120419140625.17272.23303.stgit-S6HVgzuS8uM4Awkfq6JHfwNdhmdF6hFW@public.gmane.org>
2012-04-19 16:03 ` Steve French
2012-04-26 13:47 ` David Howells
2012-04-26 17:00 ` Steve French
2012-04-19 14:07 ` [PATCH 6/6] xstat: eCryptFS: " David Howells
2012-04-19 17:11 ` [PATCH 0/6] Extended file stat system call Steve French
2012-04-27 1:06 ` Dave Chinner
2012-04-27 3:22 ` Andreas Dilger
[not found] ` <ED5B8F1B-6C99-4516-85FA-A767E94B635F-m1MBpc4rdrD3fQ9qLvQP4Q@public.gmane.org>
2012-04-28 0:38 ` Dave Chinner
2012-04-28 0:54 ` Steve French
2012-05-08 20:19 ` Extended file stat: Splitting file- and fs-specific info? David Howells
2012-05-08 21:13 ` Myklebust, Trond
[not found] ` <16281.1336508382-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-05-09 0:24 ` Dave Chinner
2012-05-09 1:09 ` J. Bruce Fields
2012-05-09 4:25 ` Dave Chinner
2012-05-09 11:14 ` J. Bruce Fields
2012-05-09 1:16 ` Andreas Dilger
2012-05-10 9:23 ` David Howells
[not found] ` <14477.1336641794-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-05-10 16:05 ` Andreas Dilger
2012-05-10 17:10 ` Roland McGrath
2012-05-11 8:54 ` Andreas Dilger
2012-05-09 9:21 ` David Howells
[not found] ` <20170.1336555274-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-05-09 11:19 ` Christoph Hellwig
[not found] ` <20120509111958.GA11345-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2012-05-09 11:55 ` Bernd Schubert
[not found] ` <4FAA5B24.1020306-mPn0NPGs4xGatNDF+KUbs4QuADTiUCJX@public.gmane.org>
2012-05-09 12:05 ` Christoph Hellwig
[not found] ` <20120509120544.GA17535-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2012-05-09 12:25 ` Bernd Schubert
2012-05-09 13:51 ` Andreas Dilger
2012-05-09 14:12 ` Bernd Schubert
2012-05-10 9:14 ` David Howells
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4111.1335519545@redhat.com \
--to=dhowells@redhat.com \
--cc=david@fromorbit.com \
--cc=kfm-devel@kde.org \
--cc=libc-alpha@sourceware.org \
--cc=linux-api@vger.kernel.org \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=nautilus-list@gnome.org \
--cc=samba-technical@lists.samba.org \
--cc=wine-devel@winehq.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).