diff options
author | Filipe Manana <fdmanana@gmail.com> | 2014-06-25 23:36:02 +0200 |
---|---|---|
committer | Chris Mason <clm@fb.com> | 2014-07-03 16:03:23 +0200 |
commit | 3cc79392558f1789e5e1d2fce44b681980f403c3 (patch) | |
tree | f0f71bc0170de156ec9b772ab886fa53c458746d /lib/kasprintf.c | |
parent | btrfs: only unlock block in verify_parent_transid if we locked it (diff) | |
download | linux-3cc79392558f1789e5e1d2fce44b681980f403c3.tar.xz linux-3cc79392558f1789e5e1d2fce44b681980f403c3.zip |
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 'lib/kasprintf.c')
0 files changed, 0 insertions, 0 deletions