mirror of https://gitee.com/openkylin/linux.git
Btrfs: fix hole check in log_one_extent
I added an assert to make sure we were looking up aligned offsets for csums and I tripped it when running xfstests. This is because log_one_extent was checking if block_start == 0 for a hole instead of EXTENT_MAP_HOLE. This worked out fine in practice it seems, but it adds a lot of extra work that is uneeded. With this fix I'm no longer tripping my assert. Thanks, Signed-off-by: Josef Bacik <jbacik@fusionio.com> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
This commit is contained in:
parent
0e30db86a4
commit
ed9e8af88e
|
@ -3373,7 +3373,7 @@ static int log_one_extent(struct btrfs_trans_handle *trans,
|
|||
btrfs_set_token_file_extent_type(leaf, fi,
|
||||
BTRFS_FILE_EXTENT_REG,
|
||||
&token);
|
||||
if (em->block_start == 0)
|
||||
if (em->block_start == EXTENT_MAP_HOLE)
|
||||
skip_csum = true;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue