mirror of https://gitee.com/openkylin/linux.git
Btrfs: Set nodatasum on the inode when written by a nodatasum mount
Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
parent
38b669880d
commit
409c6118d3
|
@ -863,6 +863,14 @@ static ssize_t btrfs_file_write(struct file *file, const char __user *buf,
|
|||
first_index = pos >> PAGE_CACHE_SHIFT;
|
||||
last_index = (pos + count) >> PAGE_CACHE_SHIFT;
|
||||
|
||||
/*
|
||||
* if this is a nodatasum mount, force summing off for the inode
|
||||
* all the time. That way a later mount with summing on won't
|
||||
* get confused
|
||||
*/
|
||||
if (btrfs_test_opt(root, NODATASUM))
|
||||
btrfs_set_flag(inode, NODATASUM);
|
||||
|
||||
/*
|
||||
* there are lots of better ways to do this, but this code
|
||||
* makes sure the first and last page in the file range are
|
||||
|
|
Loading…
Reference in New Issue