diff options
author | Filipe Manana <fdmanana@gmail.com> | 2014-06-26 01:36:02 +0400 |
---|---|---|
committer | Chris Mason <clm@fb.com> | 2014-07-03 18:03:23 +0400 |
commit | 3cc79392558f1789e5e1d2fce44b681980f403c3 (patch) | |
tree | f0f71bc0170de156ec9b772ab886fa53c458746d /fs/btrfs/orphan.c | |
parent | 472b909ff6f4884d235ef7b9d3847fad5efafbff (diff) | |
download | linux-3cc79392558f1789e5e1d2fce44b681980f403c3.tar.xz |
Btrfs: atomically set inode->i_flags in btrfs_update_iflags
This change is based on the corresponding recent change for ext4:
ext4: atomically set inode->i_flags in ext4_set_inode_flags()
That has the following commit message that applies to btrfs as well:
"Use cmpxchg() to atomically set i_flags instead of clearing out the
S_IMMUTABLE, S_APPEND, etc. flags and then setting them from the
EXT4_IMMUTABLE_FL, EXT4_APPEND_FL flags, since this opens up a race
where an immutable file has the immutable flag cleared for a brief
window of time."
Replacing EXT4_IMMUTABLE_FL and EXT4_APPEND_FL with BTRFS_INODE_IMMUTABLE
and BTRFS_INODE_APPEND, respectively.
Reviewed-by: David Sterba <dsterba@suse.cz>
Reviewed-by: Satoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com>
Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs/btrfs/orphan.c')
0 files changed, 0 insertions, 0 deletions