Lines Matching full:split
795 * are split.
802 struct extent_map *split;
826 * because we need to split those two extent maps at the boundaries.
828 split = btrfs_alloc_extent_map();
859 * In case we split the extent map, we want to preserve the
868 * split it, we can remove it directly.
876 if (!split) {
877 split = split2;
879 if (!split)
882 split->start = em->start;
883 split->len = start - em->start;
886 split->disk_bytenr = em->disk_bytenr;
887 split->disk_num_bytes = em->disk_num_bytes;
888 split->offset = em->offset;
889 split->ram_bytes = em->ram_bytes;
891 split->disk_bytenr = em->disk_bytenr;
892 split->disk_num_bytes = 0;
893 split->offset = 0;
894 split->ram_bytes = split->len;
897 split->generation = gen;
898 split->flags = flags;
899 replace_extent_mapping(inode, em, split, modified);
900 btrfs_free_extent_map(split);
901 split = split2;
905 if (!split) {
906 split = split2;
908 if (!split)
911 split->start = end;
912 split->len = em_end - end;
913 split->disk_bytenr = em->disk_bytenr;
914 split->flags = flags;
915 split->generation = gen;
918 split->disk_num_bytes = em->disk_num_bytes;
919 split->offset = em->offset + end - em->start;
920 split->ram_bytes = em->ram_bytes;
922 split->disk_num_bytes = 0;
923 split->offset = 0;
924 split->ram_bytes = split->len;
928 replace_extent_mapping(inode, em, split, modified);
932 ret = add_extent_mapping(inode, split, modified);
938 btrfs_free_extent_map(split);
939 split = NULL;
952 * maps for split operations, @split and @split2.
964 ASSERT(!split);
984 btrfs_free_extent_map(split);
1030 * Split off the first pre bytes from the extent_map at [start, start + len],
1033 * This function is used when an ordered_extent needs to be split.