Commit 08b63307 authored by Miklos Szeredi's avatar Miklos Szeredi Committed by Linus Torvalds

fuse: fix attribute caching after rename

Invalidate attributes on rename, since some filesystems may update
st_ctime.  Reported by Szabolcs Szakacsits
Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent fbee36b9
...@@ -657,6 +657,9 @@ static int fuse_rename(struct inode *olddir, struct dentry *oldent, ...@@ -657,6 +657,9 @@ static int fuse_rename(struct inode *olddir, struct dentry *oldent,
err = req->out.h.error; err = req->out.h.error;
fuse_put_request(fc, req); fuse_put_request(fc, req);
if (!err) { if (!err) {
/* ctime changes */
fuse_invalidate_attr(oldent->d_inode);
fuse_invalidate_attr(olddir); fuse_invalidate_attr(olddir);
if (olddir != newdir) if (olddir != newdir)
fuse_invalidate_attr(newdir); fuse_invalidate_attr(newdir);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment