summary refs log tree commit diff
diff options
context:
space:
mode:
authorEnke Chen <enkechen@yahoo.com>2013-02-04 16:14:32 +0100
committerMiklos Szeredi <mszeredi@suse.cz>2013-02-04 16:14:32 +0100
commit0415d291022543d83ee799e9ffee08d856bca6e8 (patch)
tree3e2b66aac312f045ffca72e75f90e7055e69ff2e
parentdfca7cebc2679f3d129f8e680a8f199a7ad16e38 (diff)
downloadlinux-0415d291022543d83ee799e9ffee08d856bca6e8.tar.gz
fuse: send poll events
commit 626cf23660 "poll: add poll_requested_events()..." enabled us to send the
requested events to the filesystem.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
-rw-r--r--fs/fuse/file.c1
-rw-r--r--include/uapi/linux/fuse.h3
2 files changed, 3 insertions, 1 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index a010585b0a74..c8071768b950 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -2167,6 +2167,7 @@ unsigned fuse_file_poll(struct file *file, poll_table *wait)
 		return DEFAULT_POLLMASK;
 
 	poll_wait(file, &ff->poll_wait, wait);
+	inarg.events = (__u32)poll_requested_events(wait);
 
 	/*
 	 * Ask for notification iff there's someone waiting for it.
diff --git a/include/uapi/linux/fuse.h b/include/uapi/linux/fuse.h
index 3451b6061e69..68619e9210b9 100644
--- a/include/uapi/linux/fuse.h
+++ b/include/uapi/linux/fuse.h
@@ -63,6 +63,7 @@
  *
  * 7.21
  *  - add FUSE_READDIRPLUS
+ *  - send the requested events in POLL request
  */
 
 #ifndef _LINUX_FUSE_H
@@ -585,7 +586,7 @@ struct fuse_poll_in {
 	__u64	fh;
 	__u64	kh;
 	__u32	flags;
-	__u32   padding;
+	__u32   events;
 };
 
 struct fuse_poll_out {