On Wed 06-10-10 11:08:00, Dmitry wrote: > On Tue, 5 Oct 2010 22:20:16 +0400, Dmitry Monakhov <dmonakhov@xxxxxxxxxx> wrote: > Sorry, seems like my script screw-up subject header. > > This patch set is my first attempt to make quota code scalable. > > Main goal of this patch-set is to split global locking to per-sb basis. > > Please review it and provide your opinion. > > > > Future plans: > > * More scalability for single super_block > > ** Remove dqptr_sem > > ** Redesing dquot ref accounting interface. > > ** Make fast path for charge function lockless > > > > quota: add wrapper function > > quota: Convert dq_state_lock to per-sb dq_state_lock > > quota: add quota format lock > > quota: make dquot lists per-sb > > quota: make per-sb hash array > > quota: remove global dq_list_lock > > quota: rename dq_lock > > quota: make per-sb dq_data_lock > > quota: protect dquot mem info with objects's lock > > quota: drop dq_data_lock where possible > > quota: relax dq_data_lock dq_lock locking consistency So one generic question: I see you split global locks into per-sb ones. Does it bring substantial advantage? Because from my experience common systems have just one or maybe two filesystems which are heavily used... Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html