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

Ingo Molnar
2005-12-13T09:40:34Z

* Christoph Hellwig <hch@infradead.org> wrote:

> On Tue, Dec 13, 2005 at 08:54:41AM +0100, Ingo Molnar wrote:
> > - i did not touch the 'struct semaphore' namespace, but introduced a
> > 'struct compat_semaphore'.
>
> Because it's totally braindead. Your compat_semaphore is a real
> semaphore and your semaphore is a mutex. So name them as such.

well, i had the choice between a 30K patch, a 300K patch and a 3000K
patch. I went for the 30K patch ;-)

> > - i introduced a 'type-sensitive' macro wrapper that switches down()
> > (and the other APIs) to either to the assembly variant (if the
> > variable's type is struct compat_semaphore), or switches it to the new
> > generic mutex (if the type is struct semaphore), at build-time. There
> > is no runtime overhead due to this build-time-switching.
>
> And this one is probably is a great help to win the obsfucated C
> contests, but otherwise just harmfull.

i never found it to be harmful in any way, and we've now got a year of
experience with them. Could you elaborate?

Ingo