The variable i is declared at the start of function btrfs_qgroup_inherit however there are two for-loops that redeclare the variable using a C99 declaration, causes name shadowing. I believe there is no need for this local scoping of i in the loop, so replace the declaration in the loops with assignments. Cleans up clang scan build warnings: fs/btrfs/qgroup.c:3194:12: warning: declaration shadows a local variable [-Wshadow] 3194 | for (int i = 0; i < inherit->num_qgroups; i++) { | ^ fs/btrfs/qgroup.c:3089:6: note: previous declaration is here 3089 | int i; | ^ fs/btrfs/qgroup.c:3321:12: warning: declaration shadows a local variable [-Wshadow] 3321 | for (int i = 0; i < inherit->num_qgroups; i++) | ^ fs/btrfs/qgroup.c:3089:6: note: previous declaration is here 3089 | int i; | ^ Signed-off-by: Colin Ian King <colin.i.king@xxxxxxxxx> --- fs/btrfs/qgroup.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fs/btrfs/qgroup.c b/fs/btrfs/qgroup.c index ce446d9d7f23..b1f93dbf468c 100644 --- a/fs/btrfs/qgroup.c +++ b/fs/btrfs/qgroup.c @@ -3191,7 +3191,7 @@ int btrfs_qgroup_inherit(struct btrfs_trans_handle *trans, u64 srcid, ret = -ENOMEM; goto out; } - for (int i = 0; i < inherit->num_qgroups; i++) { + for (i = 0; i < inherit->num_qgroups; i++) { qlist_prealloc[i] = kzalloc(sizeof(struct btrfs_qgroup_list), GFP_NOFS); if (!qlist_prealloc[i]) { @@ -3318,7 +3318,7 @@ int btrfs_qgroup_inherit(struct btrfs_trans_handle *trans, u64 srcid, if (need_rescan) qgroup_mark_inconsistent(fs_info); if (qlist_prealloc) { - for (int i = 0; i < inherit->num_qgroups; i++) + for (i = 0; i < inherit->num_qgroups; i++) kfree(qlist_prealloc[i]); kfree(qlist_prealloc); } -- 2.39.2