On 05/02, Oleg Nesterov wrote: > > But this all is cosmetic, it seems that we can remove ->rw_sem altogether > but I am not sure... I mean, afaics percpu_down_read() can just do wait_event(readers_block == 0); in the slow path, while percpu_down_write() wait_even_exclusive(xchg(readers_block, 1) == 0); we do not really need ->rw_sem if we rely on wait_queue_head. But in fact, either way it seems that we going to implement another simple "non owner" read/write lock, so perhaps we should do this explicitly? Oleg.