Btrfs: do not change inode flags in rename
authorLiu Bo <bo.li.liu@oracle.com>
Mon, 25 Feb 2013 04:04:42 +0000 (04:04 +0000)
committerJosef Bacik <jbacik@fusionio.com>
Tue, 26 Feb 2013 16:01:19 +0000 (11:01 -0500)
commit8c4ce81e911ab6c84e4f75e18d4ceb3fa555c35b
treeefaf7d66ae75071318f3532c140f2b149e81f83b
parent2382c5cc7ed0396b61a359765bf5ee125b0a2f46
Btrfs: do not change inode flags in rename

Before we forced to change a file's NOCOW and COMPRESS flag due to
the parent directory's, but this ends up a bad idea, because it
confuses end users a lot about file's NOCOW status, eg. if someone
change a file to NOCOW via 'chattr' and then rename it in the current
directory which is without NOCOW attribute, the file will lose the
NOCOW flag silently.

This diables 'change flags in rename', so from now on we'll only
inherit flags from the parent directory on creation stage while in
other places we can use 'chattr' to set NOCOW or COMPRESS flags.

Reported-by: Marios Titas <redneb8888@gmail.com>
Signed-off-by: Liu Bo <bo.li.liu@oracle.com>
Reviewed-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
fs/btrfs/inode.c