Re: [PATCH 1/19] MUTEX: Introduce simple mutex implementation

Thomas Gleixner
2005-12-14T23:57:47Z

On Wed, 2005-12-14 at 18:40 -0500, Mark Lord wrote:
> Thomas Gleixner wrote:
> >
> > You can do a full scripted rename of up/down to the mutex API and then
> > fix up the 100 places used by semaphores manually.
>
> Again, folks, this only works for current in-tree kernel code.
>
> There are huge amounts of kernel code out-of-tree that still use
> up/down as (or potentially as) counting semaphores.
>
> Yes, some of that code is closed-source, but most of it is open-source
> stuff in people's "queues", such as the network patch-o-matic queue
> and other stuff. Lots of open-source out-of-tree drivers, too.
>
> Re-using the existing up()/down() names for a new purpose is
> a very very Bad Idea.

Ack.

> Removing up()/down() entirely is not quite so bad,
> because at least then people will eventually notice the change.
>
> Leaving up()/down() as-is is really the most sensible option.

Not at all.

Doing a s/down/lock_mutex/ s/up/unlock_mutex/ - or whatever naming
convention we want to use - all over the place for mutexes while keeping
the up/down for counting semaphores is an one time issue.

After the conversion every code breaks at compile time which tries to do
up/down(mutex_type).

So the out of tree drivers have a clear indication what to fix. This is
also a one time issue.

So where is the problem - except for fixing "huge" amounts of out of
kernel code once ?

tglx