Re: [PATCH linux-2.6 01/04] brsem: implement big reader semaphore

Nick Piggin
2005-09-25T07:18:24Z

Tejun Heo wrote:
> 01_brsem_implement_brsem.patch
>
> This patch implements big reader semaphore - a rwsem with very
> cheap reader-side operations and very expensive writer-side
> operations. For details, please read comments at the top of
> kern/brsem.c.
>

This thing looks pretty overengineered. It is difficult to
read with all the little wrapper functions and weird naming
schemes.

What would be wrong with an array of NR_CPUS rwsems? The only
tiny trick you would have to do AFAIKS is have up_read remember
what rwsem down_read took, but that could be returned from
down_read as a token.

I have been meaning to do something like this for mmap_sem to
see what happens to page fault scalability (though the heavy
write-side would make such a scheme unsuitable for mainline).

--
SUSE Labs, Novell Inc.

Send instant messages to your online friends http://au.messenger.yahoo.com