diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c index 07b0b42187913ce4ae2263d33c6d43cbb1b461ae..6c413bb451a3dc2f59296b274100d83deeb7a38e 100644 --- a/fs/btrfs/ordered-data.c +++ b/fs/btrfs/ordered-data.c @@ -984,7 +984,7 @@ int btrfs_split_ordered_extent(struct btrfs_ordered_extent *ordered, u64 pre, if (pre) ret = clone_ordered_extent(ordered, 0, pre); - if (post) + if (ret == 0 && post) ret = clone_ordered_extent(ordered, pre + ordered->disk_num_bytes, post);