Commit 9c7e71c9 authored by Qiang Ma's avatar Qiang Ma Committed by David Sterba
Browse files

btrfs: fix Wmaybe-uninitialized warning in replay_one_buffer()



Warning was found when compiling using loongarch64-gcc 12.3.1:

  $ make CFLAGS_tree-log.o=-Wmaybe-uninitialized

  In file included from fs/btrfs/ctree.h:21,
		   from fs/btrfs/tree-log.c:12:
  fs/btrfs/accessors.h: In function 'replay_one_buffer':
  fs/btrfs/accessors.h:66:16: warning: 'inode_item' may be used uninitialized [-Wmaybe-uninitialized]
     66 |         return btrfs_get_##bits(eb, s, offsetof(type, member));         \
	|                ^~~~~~~~~~
  fs/btrfs/tree-log.c:2803:42: note: 'inode_item' declared here
   2803 |                 struct btrfs_inode_item *inode_item;
	|                                          ^~~~~~~~~~

Initialize the inode_item to NULL, the compiler does not seem to see the
relation between the first 'wc->log_key.type == BTRFS_INODE_ITEM_KEY'
check and the other one that also checks the replay phase.

Signed-off-by: default avatarQiang Ma <maqianga@uniontech.com>
Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 437cc605
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2798,7 +2798,7 @@ static int replay_one_buffer(struct extent_buffer *eb,

	nritems = btrfs_header_nritems(eb);
	for (wc->log_slot = 0; wc->log_slot < nritems; wc->log_slot++) {
		struct btrfs_inode_item *inode_item;
		struct btrfs_inode_item *inode_item = NULL;

		btrfs_item_key_to_cpu(eb, &wc->log_key, wc->log_slot);