On Thu, Mar 24, 2022 at 08:36:45AM -0700, Nathan Chancellor wrote:
Clang's version of -Wunused-but-set-variable recently gained support for unary operations, which reveals two unused variables:
fs/btrfs/block-group.c:2949:6: error: variable 'num_started' set but not used [-Werror,-Wunused-but-set-variable] int num_started = 0; ^ fs/btrfs/block-group.c:3116:6: error: variable 'num_started' set but not used [-Werror,-Wunused-but-set-variable] int num_started = 0; ^ 2 errors generated.
These variables appear to be unused from their introduction, so just remove them to silence the warnings.
Cc: stable@vger.kernel.org Fixes: c9dc4c657850 ("Btrfs: two stage dirty block group writeout") Fixes: 1bbc621ef284 ("Btrfs: allow block group cache writeout outside critical section in commit") Link: https://github.com/ClangBuiltLinux/linux/issues/1614 Signed-off-by: Nathan Chancellor nathan@kernel.org
Added to misc-next, thanks.
I am requesting a stable backport because this is visible with allmodconfig, which enables CONFIG_WERROR, breaking the build.
Yeah warning fixes are accepted in stable trees and we care about warning-free builds. My gcc 11.1 does not produce any warning with -Wunused-but-set-variable and we have extended the set of warnings in the directory fs/btrfs/ that also includes that one.
To quote Linus:
"EVERYBODY should have CONFIG_WERROR=y on at least x86-64 and other serious architectures, unless you have some completely random experimental (and broken) compiler."
I have CONFIG_WERROR disabled, for own development it's quite annoying when build fails outside of the code I care about, while I apply visual checks of warning-free builds.