summaryrefslogtreecommitdiffstats
path: root/fs/fuse/dir.c
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2005-09-09 13:10:38 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-09 14:03:47 -0700
commitb36c31ba95f0fe0a03c727300d9c4c54438a5636 (patch)
tree092a83bc7f351bdd66aafee0f59fddba982b4317 /fs/fuse/dir.c
parent45323fb76465a9576220c7427dbac7b1e7ad3caf (diff)
downloadlinux-b36c31ba95f0fe0a03c727300d9c4c54438a5636.tar.gz
linux-b36c31ba95f0fe0a03c727300d9c4c54438a5636.tar.bz2
linux-b36c31ba95f0fe0a03c727300d9c4c54438a5636.zip
[PATCH] fuse: don't update file times
Don't change mtime/ctime/atime to local time on read/write. Rather invalidate file attributes, so next stat() will force a GETATTR call. Bug reported by Ben Grimm. Signed-off-by: Miklos Szeredi <miklos@szeredi.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/fuse/dir.c')
-rw-r--r--fs/fuse/dir.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c
index cf5d1faed7af..9b43fd46aaad 100644
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -552,6 +552,7 @@ static int fuse_readdir(struct file *file, void *dstbuf, filldir_t filldir)
filldir);
__free_page(page);
+ fuse_invalidate_attr(inode); /* atime changed */
return err;
}
@@ -585,6 +586,7 @@ static char *read_link(struct dentry *dentry)
link[req->out.args[0].size] = '\0';
out:
fuse_put_request(fc, req);
+ fuse_invalidate_attr(inode); /* atime changed */
return link;
}