Re: [PATCH 1/3] cgroup: convert open-coded mutex_lock(&cgroup_mutex) calls into cgroup_lock() calls

From: Paul Menage
Date: Sun Jan 18 2009 - 20:37:41 EST


On Sun, Jan 18, 2009 at 1:10 AM, Ingo Molnar <mingo@xxxxxxx> wrote:
> this just changes over a clean mutex call to a wrapped lock/unlock
> sequence that has higher overhead in the common case.
>
> We should do the exact opposite, we should change this opaque API:
>
> void cgroup_lock(void)
> {
> mutex_lock(&cgroup_mutex);
> }
>
> To something more explicit (and more maintainable) like:

I disagree - cgroup_mutex is a very coarse lock that can be held for
pretty long periods of time by the cgroups framework, and should never
be part of any fastpath code. So the overhead of a function call
should be irrelevant.

The change that you're proposing would send the message that
cgroup_mutex_lock(&cgroup_mutex) is appropriate to use in a
performance-sensitive function, when in fact we want to discourage
such code from taking this lock and instead use more appropriately
fine-grained locks.

Paul
--
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/