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

David Howells
2005-12-13T11:34:14Z

David Howells <dhowells@redhat.com> wrote:

> > Any reason why you're setting up your own style of waitqueue in
> > mutex-simple.c instead of just using the kernel's style of waitqueue?
>
> Because I can steal the code from FRV's semaphores or rw-semaphores, and this
> way I can be sure of what I'm doing.

And because:

struct mutex {
int state;
wait_queue_head_t wait_queue;
};

Wastes 8 more bytes of memory than:

struct mutex {
int state;
spinlock_t wait_lock;
struct list_head wait_list;
};

on a 64-bit machine if spinlock_t is 4 bytes. Both waste 4 bytes if spinlock_t
is 8 bytes.

David