aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kara <[email protected]>2010-08-17 12:42:13 +0200
committerAl Viro <[email protected]>2010-08-18 01:04:22 -0400
commitdad5eb6daa7eeb63d4fc9d982892c59faa07e797 (patch)
treeed4254bdc2353350a48dff0bd7afadd167c1fa21
parentb845ff8f3ea2988ad5041315e2d35298e85cbc2f (diff)
vfs: update ctime when changing the file's permission by setfacl
generic_acl_set didn't update the ctime of the file when its permission was changed. Steps to reproduce: # touch aaa # stat -c %Z aaa 1275289822 # setfacl -m 'u::x,g::x,o::x' aaa # stat -c %Z aaa 1275289822 <- unchanged But, according to the spec of the ctime, vfs must update it. Port of ext3 patch by Miao Xie <[email protected]>. CC: Al Viro <[email protected]> Signed-off-by: Jan Kara <[email protected]> Signed-off-by: Al Viro <[email protected]>
-rw-r--r--fs/generic_acl.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/generic_acl.c b/fs/generic_acl.c
index 99800e564157..6bc9e3a5a693 100644
--- a/fs/generic_acl.c
+++ b/fs/generic_acl.c
@@ -94,6 +94,7 @@ generic_acl_set(struct dentry *dentry, const char *name, const void *value,
if (error < 0)
goto failed;
inode->i_mode = mode;
+ inode->i_ctime = CURRENT_TIME;
if (error == 0) {
posix_acl_release(acl);
acl = NULL;