fuse: optimize wake_up
authorMiklos Szeredi <mszeredi@suse.cz>
Wed, 17 Apr 2013 19:50:58 +0000 (21:50 +0200)
committerMiklos Szeredi <mszeredi@suse.cz>
Wed, 17 Apr 2013 19:50:58 +0000 (21:50 +0200)
Normally blocked_waitq will be inactive, so optimize this case.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
fs/fuse/dev.c

index 3673105..be5c7e1 100644 (file)
@@ -379,7 +379,7 @@ __releases(fc->lock)
                        fc->blocked = 0;
 
                /* Wake up next waiter, if any */
-               if (!fc->blocked)
+               if (!fc->blocked && waitqueue_active(&fc->blocked_waitq))
                        wake_up(&fc->blocked_waitq);
 
                if (fc->num_background == fc->congestion_threshold &&