From: Jan Kara Subject: Re: [PATCH 1/4] Adds general codes to enforces project quota limits Date: Wed, 24 Sep 2014 19:37:42 +0200 Message-ID: <20140924173742.GI27000@quack.suse.cz> References: <1411567470-31799-1-git-send-email-lixi@ddn.com> <1411567470-31799-2-git-send-email-lixi@ddn.com> <20140924161417.GA1978@infradead.org> <20140924171020.GF27000@quack.suse.cz> <20140924171306.GA23874@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Jan Kara , Li Xi , linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-ext4-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, tytso-3s7WtUTddSA@public.gmane.org, adilger-m1MBpc4rdrD3fQ9qLvQP4Q@public.gmane.org, viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org, dmonakhov-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org To: Christoph Hellwig Return-path: Content-Disposition: inline In-Reply-To: <20140924171306.GA23874-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org> Sender: linux-api-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-ext4.vger.kernel.org On Wed 24-09-14 10:13:06, Christoph Hellwig wrote: > On Wed, Sep 24, 2014 at 07:10:20PM +0200, Jan Kara wrote: > > Yeah, I'm aware of that but I decided I won't bother Li Xi with that > > since it's independent issue and 8 bytes aren't that terrible. > > For the inode of which we have so many instances it is. Especially when > only one filesystem can make use of this new field. > > > Personally > > I somewhat prefer what I did in > > http://www.spinics.net/lists/linux-fsdevel/msg74927.html > > where we don't introduce additional method but rather a table with field > > offsets in superblock. If people agree with this, I can cook up a patch for > > quota relatively quickly. > > There's an even better way. We stopped calling the dquot_* functions > from generic code, so now the filesystem can simply pass in a pointer > to the dquot array. I thought that as well before I tried that :) There are situations like when turning quotas on & off where we iterate over all inodes and need to get dquots from the inode... I don't see how to handle those situations without fs callback / table of offsets. Honza -- Jan Kara SUSE Labs, CR