mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 02:39:48 +00:00
btrfs: Remove not_found_em label from btrfs_get_extent
In order to avoid duplicating init code for em there is an additional label, not_found_em, which is used to only set ->block_start. The only case when it will be used is if the extent we are adding overlaps with an existing extent. Make that case more obvious by: 1. Adding a comment hinting at what's going on 2. Assigning EXTENT_MAP_HOLE and directly going to insert. No functional changes. Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Nikolay Borisov <nborisov@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
b8eeab7fce
commit
02a033df7a
1 changed files with 4 additions and 2 deletions
|
@ -6858,10 +6858,13 @@ struct extent_map *btrfs_get_extent(struct btrfs_inode *inode,
|
|||
goto not_found;
|
||||
if (start > found_key.offset)
|
||||
goto next;
|
||||
|
||||
/* New extent overlaps with existing one */
|
||||
em->start = start;
|
||||
em->orig_start = start;
|
||||
em->len = found_key.offset - start;
|
||||
goto not_found_em;
|
||||
em->block_start = EXTENT_MAP_HOLE;
|
||||
goto insert;
|
||||
}
|
||||
|
||||
btrfs_extent_item_to_extent_map(inode, path, item,
|
||||
|
@ -6921,7 +6924,6 @@ struct extent_map *btrfs_get_extent(struct btrfs_inode *inode,
|
|||
em->start = start;
|
||||
em->orig_start = start;
|
||||
em->len = len;
|
||||
not_found_em:
|
||||
em->block_start = EXTENT_MAP_HOLE;
|
||||
insert:
|
||||
btrfs_release_path(path);
|
||||
|
|
Loading…
Reference in a new issue