From: Li Xi <pkuelelixi@gmail.com>
To: "Theodore Ts'o" <tytso@mit.edu>
Cc: "linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
Ext4 Developers List <linux-ext4@vger.kernel.org>,
"linux-api@vger.kernel.org" <linux-api@vger.kernel.org>,
Andreas Dilger <adilger@dilger.ca>, Jan Kara <jack@suse.cz>,
"viro@zeniv.linux.org.uk" <viro@zeniv.linux.org.uk>,
"hch@infradead.org" <hch@infradead.org>,
Dmitry Monakhov <dmonakhov@openvz.org>
Subject: Re: [v6 2/4] ext4: adds project ID support
Date: Tue, 11 Nov 2014 15:34:40 +0800 [thread overview]
Message-ID: <CAPTn0cBYOcsgVmYuhWCZnsf8=t8Hbo+d35PPbn_sUspQAurDmQ@mail.gmail.com> (raw)
In-Reply-To: <20141111042606.GA17027@thunk.org>
On Tue, Nov 11, 2014 at 12:26 PM, Theodore Ts'o <tytso@mit.edu> wrote:
> On Sun, Nov 09, 2014 at 01:43:37AM +0800, Li Xi wrote:
>> This patch adds a new internal field of ext4 inode to save project
>> identifier. Also a new flag EXT4_INODE_PROJINHERIT is added for
>> inheriting project ID from parent directory.
>
> What would be the downside of simply always inhereiting the project ID
> from the parent directory? I see that if the flag is not set, the
> project id will be 0 instead. I'm not sure when that would actually
> be desirable.
>
> To the extent that the project ID is designed to implement a quota
> over a directory extent, the fact that the owner can clear the
> EXT4_PROJINHERET_FL and then arrange to have the quota charged to
> project 0 seems to me to be a bug, not a feature.
>
Yeah, if we only intend to implement quota over directories, always inheriting
project ID from parent directory is fine. But we want this to be more flexible,
thus more powerful to enable other use cases. Always inheriting project ID
from parent means inodes uner the same subtree has the same project ID,
which might limit some use cases.
For example, if the administrator wants to track the disk usages of files
which scatter under different directories yet has similar attributes (e.g.
the sizes of them are really big), they can use project quota to archive
this goal. Combining 'find' command with setting project ID is really
convenient for this use case. And obviously, it wounldn't be possible,
if we don't have a mutable EXT4_INODE_PROJINHERIT flag.
Please note that project ID can only be change by administrator,
which means even the owners of the files can't change the project IDs.
The idea behinds it is that project quota is a tool for administrators, not
for common users.
And EXT4_INODE_PROJINHERIT is introduced into Ext4 in oder to keep
compatibile with XFS too. Otherwise, they would have different semantics. ;)
Regards,
- Li Xi
next prev parent reply other threads:[~2014-11-11 7:34 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-08 17:43 [v6 0/4] ext4: add project quota support Li Xi
[not found] ` <1415468619-31851-1-git-send-email-lixi-LfVdkaOWEx8@public.gmane.org>
2014-11-08 17:43 ` [v6 1/4] vfs: adds general codes to enforces project quota limits Li Xi
[not found] ` <1415468619-31851-2-git-send-email-lixi-LfVdkaOWEx8@public.gmane.org>
2014-11-11 20:27 ` Jan Kara
2014-11-08 17:43 ` [v6 2/4] ext4: adds project ID support Li Xi
2014-11-10 22:21 ` Andreas Dilger
[not found] ` <1415468619-31851-3-git-send-email-lixi-LfVdkaOWEx8@public.gmane.org>
2014-11-11 4:26 ` Theodore Ts'o
2014-11-11 7:34 ` Li Xi [this message]
2014-11-11 20:23 ` Jan Kara
2014-11-11 20:31 ` Jan Kara
2014-11-08 17:43 ` [v6 3/4] ext4: adds project quota support Li Xi
[not found] ` <1415468619-31851-4-git-send-email-lixi-LfVdkaOWEx8@public.gmane.org>
2014-11-11 20:34 ` Jan Kara
2014-11-08 17:43 ` [v6 4/4] ext4: adds FS_IOC_FSSETXATTR/FS_IOC_FSGETXATTR interface support Li Xi
2014-11-10 0:05 ` Dave Chinner
2014-11-11 21:58 ` Dave Chinner
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='CAPTn0cBYOcsgVmYuhWCZnsf8=t8Hbo+d35PPbn_sUspQAurDmQ@mail.gmail.com' \
--to=pkuelelixi@gmail.com \
--cc=adilger@dilger.ca \
--cc=dmonakhov@openvz.org \
--cc=hch@infradead.org \
--cc=jack@suse.cz \
--cc=linux-api@vger.kernel.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=tytso@mit.edu \
--cc=viro@zeniv.linux.org.uk \
/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).