Messages in this thread | | | Date | Tue, 25 Sep 2018 16:35:27 -0400 | From | Dennis Zhou <> | Subject | Re: [PATCH] arm64: percpu: Initialize ret in the default case |
| |
Hi Nick,
On Tue, Sep 25, 2018 at 01:24:06PM -0700, Nick Desaulniers wrote: > On Tue, Sep 25, 2018 at 12:45 PM Nathan Chancellor > <natechancellor@gmail.com> wrote: > > > > Clang warns that if the default case is taken, ret will be > > uninitialized. > > > > ./arch/arm64/include/asm/percpu.h:196:2: warning: variable 'ret' is used > > uninitialized whenever switch default is taken > > [-Wsometimes-uninitialized] > > default: > > ^~~~~~~ > > ./arch/arm64/include/asm/percpu.h:200:9: note: uninitialized use occurs > > here > > return ret; > > ^~~ > > ./arch/arm64/include/asm/percpu.h:157:19: note: initialize the variable > > 'ret' to silence this warning > > unsigned long ret, loop; > > ^ > > = 0 > > > > This warning appears several times while building the erofs filesystem. > > While it's not strictly wrong, the BUILD_BUG will prevent this from > > becoming a true problem. Initialize ret to 0 in the default case right > > before the BUILD_BUG to silence all of these warnings. > > Clang does semantic analysis BEFORE inlining/optimizations, so I can't > determine that default is never reachable. Nathan, thanks for this > patch. > Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> >
Thanks for the explanation! Dennis
| |