[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <873a3kqjyy.fsf@openvz.org>
Date: Wed, 09 Dec 2009 17:51:17 +0300
From: Dmitry Monakhov <dmonakhov@...nvz.org>
To: Jan Kara <jack@...e.cz>
Cc: linux-ext4@...r.kernel.org, aneesh.kumar@...ux.vnet.ibm.com,
cmm@...ibm.com, linux-fsdevel@...r.kernel.org,
Al Viro <viro@...IV.linux.org.uk>
Subject: Re: [PATCH 1/3] [RFC] vfs: add generic reserved space management
interface
Jan Kara <jack@...e.cz> writes:
> On Wed 09-12-09 05:11:24, Dmitry Monakhov wrote:
>> Add new field "i_rsv_blocks" to generic inode. This value is
>> managed similar to i_blocks, i_bytes fileds (protected by i_lock).
>> This generic interface will be used by generic quota code similar
>> to i_blocks.
> I guess some people won't like bloating the VFS inode. It personally
> makes my "quota" life easier but not that many filesystems need this
> (currently I'm aware of only ext4) so their complaints are reasonable...
Please read my answer to Christoph.
>From other point of view, we may change inode structure like this:
struct quota_ptr
{
struct dquot *dquot[MAXQUOTAS];
};
struct quota_rsv_ptr
{
struct dquot *dquot[MAXQUOTAS];
qsize_t reservation;
};
struct inode {
....
#ifdef CONFIG_QUOTA
union {
struct quota_ptr i_dquot;
struct quota_rsv_ptr i_dquot_rsv;
};
#endif
....
};
Most file systems will use i_dquot, and file systems with reservation
will use quota_rsv_ptr.
Imho this is even better than, macro approach. But this requires
huge patch for each fs, but who cares.
> If we would eventually decide to go this way, I'd account reserved
> space in bytes - quota is really accounted in bytes (as some filesystems
> need this).
Yes you right, I wasn't happy about this too, Will redo.
>
> Honza
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists