summaryrefslogtreecommitdiffstats
path: root/fs/fuse
diff options
context:
space:
mode:
authorJohannes Weiner <jweiner@redhat.com>2011-07-25 22:35:35 +0200
committerMiklos Szeredi <mszeredi@suse.cz>2011-08-08 16:08:08 +0200
commit478e0841b3dce3edc2c67bf0fc51af30f582e9e2 (patch)
tree496f32d81640425d83cae9c4c764f1246a591ca1 /fs/fuse
parentb40cdd56dfa065c0832905e266b39f79419e6914 (diff)
downloadlinux-478e0841b3dce3edc2c67bf0fc51af30f582e9e2.tar.gz
linux-478e0841b3dce3edc2c67bf0fc51af30f582e9e2.tar.bz2
linux-478e0841b3dce3edc2c67bf0fc51af30f582e9e2.zip
fuse: mark pages accessed when written to
As fuse does not use the page cache library functions when userspace writes to a file, it did not benefit from 'c8236db mm: mark page accessed before we write_end()' that made sure pages are properly marked accessed when written to. Signed-off-by: Johannes Weiner <jweiner@redhat.com> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Diffstat (limited to 'fs/fuse')
-rw-r--r--fs/fuse/file.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index ab5b84ef4354..7155f49b2ef6 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -14,6 +14,7 @@
#include <linux/sched.h>
#include <linux/module.h>
#include <linux/compat.h>
+#include <linux/swap.h>
static const struct file_operations fuse_direct_io_file_operations;
@@ -834,6 +835,8 @@ static ssize_t fuse_fill_write_pages(struct fuse_req *req,
pagefault_enable();
flush_dcache_page(page);
+ mark_page_accessed(page);
+
if (!tmp) {
unlock_page(page);
page_cache_release(page);