Re: [PATCH 01/11] quota: Improve locking

From: Jan Kara
Date: Mon Jan 26 2009 - 05:04:40 EST


On Fri 23-01-09 23:49:12, Andrew Morton wrote:
> On Fri, 16 Jan 2009 19:08:09 +0100 Jan Kara <jack@xxxxxxx> wrote:
>
> > static DEFINE_SPINLOCK(dq_list_lock);
> > +static DEFINE_SPINLOCK(dq_state_lock);
> > DEFINE_SPINLOCK(dq_data_lock);
>
> The chances are very good that two or even three of these locks will
> all get placed into the same cacheline in main memory. The effects
> will be quite bad if different CPUs (or, worse, different nodes) are
> taking these locks.
>
> For single, kernel-wide locks like these I think we should almost
> always pad out to a cacheline.
I never thought about this. Thanks for the idea.

> With __cacheline_aligned_in_smp, rather than __cacheline_aligned.
> Because spinlocks do take space even in uniprocessor builds.
I've added this to my list of quota cleanups.

Honza
--
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/