On Mon, 21 Nov 2016, Oleg Nesterov wrote:
On 11/18, Davidlohr Bueso wrote:@@ -12,7 +12,7 @@ struct percpu_rw_semaphore { struct rcu_sync rss; unsigned int __percpu *read_count; struct rw_semaphore rw_sem; - wait_queue_head_t writer; + struct swait_queue_head writer;I won't argue, but even swait_queue_head is overkill in this case. We can just add "struct task_struct *writer" into percpu_rw_semaphore,
Given that this is how all things locking/ work, I very much agree with you, lemme send a v2.

