Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7e74e235 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

gcc-9: don't warn about uninitialized btrfs extent_type variable



The 'extent_type' variable does seem to be reliably initialized, but
it's _very_ non-obvious, since there's a "goto next" case that jumps
over the normal initialization.  That will then always trigger the
"start >= extent_end" test, which will end up never falling through to
the use of that variable.

But the code is certainly not obvious, and the compiler warning looks
reasonable.  Make 'extent_type' an int, and initialize it to an invalid
negative value, which seems to be the common pattern in other places.

Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 459e3a21
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -6783,7 +6783,7 @@ struct extent_map *btrfs_get_extent(struct btrfs_inode *inode,
	u64 extent_start = 0;
	u64 extent_end = 0;
	u64 objectid = btrfs_ino(inode);
	u8 extent_type;
	int extent_type = -1;
	struct btrfs_path *path = NULL;
	struct btrfs_root *root = inode->root;
	struct btrfs_file_extent_item *item;