aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/inode.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs/inode.c')
-rw-r--r--fs/btrfs/inode.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index 1bff92ad4744..7f9e0536db1a 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -3656,13 +3656,15 @@ static int btrfs_setattr(struct dentry *dentry, struct iattr *attr)
3656 if (err) 3656 if (err)
3657 return err; 3657 return err;
3658 } 3658 }
3659 attr->ia_valid &= ~ATTR_SIZE;
3660 3659
3661 if (attr->ia_valid) 3660 if (attr->ia_valid) {
3662 err = inode_setattr(inode, attr); 3661 setattr_copy(inode, attr);
3662 mark_inode_dirty(inode);
3663
3664 if (attr->ia_valid & ATTR_MODE)
3665 err = btrfs_acl_chmod(inode);
3666 }
3663 3667
3664 if (!err && ((attr->ia_valid & ATTR_MODE)))
3665 err = btrfs_acl_chmod(inode);
3666 return err; 3668 return err;
3667} 3669}
3668 3670