summaryrefslogtreecommitdiff
path: root/fs/fuse/file.c
diff options
context:
space:
mode:
authorBryan Green <bryan@grid-net.com>2011-03-01 16:43:52 -0800
committerMiklos Szeredi <mszeredi@suse.cz>2011-03-21 13:58:05 +0100
commit357ccf2b69bcefa650a54db83702381d1c9d6959 (patch)
tree0bbcbb308b0a28a489d38177a4ad7b84b1ae36d5 /fs/fuse/file.c
parent07d5f69b457019eda4ca568923b1d62b7ada89e1 (diff)
downloadlinux-3.10-357ccf2b69bcefa650a54db83702381d1c9d6959.tar.gz
linux-3.10-357ccf2b69bcefa650a54db83702381d1c9d6959.tar.bz2
linux-3.10-357ccf2b69bcefa650a54db83702381d1c9d6959.zip
fuse: wakeup pollers on connection release/abort
If a fuse dev connection is broken, wake up any processes that are blocking, in a poll system call, on one of the files in the now defunct filesystem. Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Diffstat (limited to 'fs/fuse/file.c')
-rw-r--r--fs/fuse/file.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index 9e0832dbb1e..6ea00734984 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -222,7 +222,7 @@ static void fuse_prepare_release(struct fuse_file *ff, int flags, int opcode)
rb_erase(&ff->polled_node, &fc->polled_files);
spin_unlock(&fc->lock);
- wake_up_interruptible_sync(&ff->poll_wait);
+ wake_up_interruptible_all(&ff->poll_wait);
inarg->fh = ff->fh;
inarg->flags = flags;