From: Theodore Ts'o <tytso@mit.edu>
To: Li Xi <pkuelelixi@gmail.com>
Cc: linux-fsdevel@vger.kernel.org,
Ext4 Developers List <linux-ext4@vger.kernel.org>,
viro@ZenIV.linux.org.uk, hch@infradead.org,
Jan Kara <jack@suse.cz>
Subject: Re: [PATCH v2 0/4] quota: add project quota support
Date: Fri, 8 Aug 2014 18:33:35 -0400 [thread overview]
Message-ID: <20140808223335.GQ25145@thunk.org> (raw)
In-Reply-To: <CAPTn0cAKi64Fh1pAVTDLvSS5-1Kjv7KN2HpGxtm4J8-ym-4nOQ@mail.gmail.com>
On Sat, Aug 09, 2014 at 12:39:58AM +0800, Li Xi wrote:
>
> It is obvious that extended attribute implementation has performance
> impact when creating files. That is why we choose to push the patches
> which use internal inode field to save project ID.
Were you using 256-byte inodes or 128-byte inodes when you benchmarked
using xattr versus an in-inode project quota?
The other major comment I have is that as much as possible, the
semantics should be compatible xfs's project quota. In particular,
this bit:
A managed tree must be setup initially using the -s option to the
project command. The specified project name or identifier is matched to
one or more trees defined in /etc/projects, and these trees are then
recursively descended to mark the affected inodes as being part of that
tree. This process sets an inode flag and the project identifier on
every file in the affected tree. Once this has been done, new files
created in the tree will automatically be accounted to the tree based
on their project identifier. An attempt to create a hard link to a
file in the tree will only succeed if the project identifier matches
the project identifier for the tree. The xfs_io utility can be used to
set the project ID for an arbitrary file, but this can only be done by
a privileged user.
Note the hard link restriction. And we should check with the XFS
folks what happens if you move a file from one directory which belongs
to one project quota to another directory which has a different
project quota (or no quota whatsoever). I suspect the right answer is
that the quota gets transferred from one project to another, so that
it is a true directory-tree quota system, but regardless, if we're
going to go down this path, let's stay consistent with how XFS does
things.
Cheers,
- Ted
next prev parent reply other threads:[~2014-08-08 22:33 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-08 16:39 [PATCH v2 0/4] quota: add project quota support Li Xi
2014-08-08 22:33 ` Theodore Ts'o [this message]
2014-08-09 14:24 ` Li Xi
2014-08-09 17:24 ` Theodore Ts'o
2014-08-09 22:17 ` Theodore Ts'o
2014-08-09 23:38 ` Dave Chinner
2014-08-10 0:09 ` Theodore Ts'o
2014-08-10 22:18 ` Dave Chinner
2014-08-10 2:15 ` Li Xi
2014-08-11 10:49 ` Jan Kara
2014-08-10 8:38 ` Shuichi Ihara
2014-08-10 16:52 ` Theodore Ts'o
2014-08-10 20:47 ` James Bottomley
2014-08-10 21:49 ` Theodore Ts'o
2014-08-09 22:14 ` Dave Chinner
2014-08-11 14:41 ` Theodore Ts'o
2014-08-12 15:35 ` Dmitry Monakhov
-- strict thread matches above, loose matches on Subject: below --
2014-08-08 16:58 Li Xi
2014-08-10 0:38 Li Xi
2014-08-11 0:06 Li Xi
2014-08-11 0:19 Li Xi
2014-08-11 10:23 Li Xi
2014-08-11 13:48 ` Theodore Ts'o
2014-08-11 14:16 Li Xi
2014-08-11 14:40 Li Xi
2014-08-11 14:45 ` Theodore Ts'o
2014-08-11 14:49 ` Li Xi
2014-08-11 15:03 Li Xi
2014-08-13 2:32 Li Xi
2014-08-13 13:22 ` Theodore Ts'o
2014-08-14 1:34 Li Xi
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=20140808223335.GQ25145@thunk.org \
--to=tytso@mit.edu \
--cc=hch@infradead.org \
--cc=jack@suse.cz \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=pkuelelixi@gmail.com \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.