fuse: implement exclusive wakeup for blocked_waitq
authorMaxim Patlasov <mpatlasov@parallels.com>
Thu, 21 Mar 2013 14:02:36 +0000 (18:02 +0400)
committerMiklos Szeredi <mszeredi@suse.cz>
Wed, 17 Apr 2013 10:31:45 +0000 (12:31 +0200)
commit722d2bea8c601d0744e4a37170533fdf6214a678
tree3762894f78f98474c73e1a8120da2dd1598c3673
parent0aada88476a33690c9569b094191ce92a38e6541
fuse: implement exclusive wakeup for blocked_waitq

The patch solves thundering herd problem. So far as previous patches ensured
that only allocations for background may block, it's safe to wake up one
waiter. Whoever it is, it will wake up another one in request_end() afterwards.

Signed-off-by: Maxim Patlasov <mpatlasov@parallels.com>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
fs/fuse/dev.c