mirror of https://gitee.com/openkylin/linux.git
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: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
459e3a2153
commit
7e74e235bb
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue