Re: [PATCH 00/11] V4: rwsem changes + down_read_critical() proposal

From: Peter Zijlstra
Date: Tue May 25 2010 - 04:47:43 EST


On Mon, 2010-05-24 at 13:31 -0700, Michel Lespinasse wrote:
> This is version 4 of my rwsem changes.
>
> Changes since V3:
>
> - Split first x86 rwsem change in two smaller parts
> - Added David's rwsem_waiter_type enum suggestion into
> 'rwsem: down_read_critical infrastructure support'
> - Lots of minor style fixes and comments clarified
>
> I would hope the entire series can be considered for inclusion;
> however if we can not agree on the down_read_critical() bits I would
> still like patches 1-7 to be independently considered as I think they
> still have merit on their own.
>
> Michel Lespinasse (11):
> x86 rwsem: stay on fast path when count>0 in __up_write()
> x86 rwsem: minor cleanups
> rwsem: fully separate code pathes to wake writers vs readers
> rwsem: lighter active count checks when waking up readers
> rwsem: let RWSEM_WAITING_BIAS represent any number of waiting threads
> rwsem: wake queued readers when writer blocks on active read lock
> rwsem: smaller wrappers around rwsem_down_failed_common
> generic rwsem: implement down_read_critical() / up_read_critical()
> rwsem: down_read_critical infrastructure support
> x86 rwsem: down_read_critical implementation
> Use down_read_critical() for /proc/<pid>/exe and /proc/<pid>/maps files


So what happened to those patches that dropped mmap_sem during I/O?

I really don't like people tinkering with the lock implementations like
this. Nor do I like the naming, stats are in no way _critical_.

I really think adding something like this utterly defeats the purpose of
having a fair lock.
--
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/