Subject: Re: net/xfrm/xfrm_policy.c:1286:8: error: variable 'dir' is uninitialized when used here [-Werror,-Wuninitialized]

From: Simon Horman <[email-masked]>
Date: Fri, 30 Aug 2024 18:04:49 +0100

On Fri, Aug 30, 2024 at 05:47:06PM +0100, Simon Horman wrote:
> + Florian, Steffen
> 
> On Fri, Aug 30, 2024 at 12:15:10PM +0530, Naresh Kamboju wrote:
> > The x86_64 defconfig builds failed on today's Linux next-20240829
> > due to following build warnings / errors.
> > 
> > Regressions:
> > * i386, build
> >   - clang-18-defconfig
> >   - clang-nightly-defconfig
> > 
> > * x86_64, build
> >   - clang-18-lkftconfig
> >   - clang-18-lkftconfig-compat
> >   - clang-18-lkftconfig-kcsan
> >   - clang-18-lkftconfig-no-kselftest-frag
> >   - clang-18-x86_64_defconfig
> >   - clang-nightly-lkftconfig
> >   - clang-nightly-lkftconfig-kselftest
> >   - clang-nightly-x86_64_defconfig
> >   - rustclang-nightly-lkftconfig-kselftest
> > 
> > first seen on next-20240829.
> >   Good: next-20240828
> >   BAD:  next-20240829
> > 
> > Reported-by: Linux Kernel Functional Testing <[email-masked]>
> > 
> > build log:
> > --------
> > net/xfrm/xfrm_policy.c:1286:8: error: variable 'dir' is uninitialized
> > when used here [-Werror,-Wuninitialized]
> >  1286 |                 if ((dir & XFRM_POLICY_MASK) == XFRM_POLICY_OUT) {
> >       |                      ^~~
> > net/xfrm/xfrm_policy.c:1257:9: note: initialize the variable 'dir' to
> > silence this warning
> >  1257 |         int dir;
> >       |                ^
> >       |                 = 0
> > 1 error generated.
> 
> I believe that is due to
> commit 08c2182cf0b4 ("xfrm: policy: use recently added helper in more places")
> 
> I will work on a fix to initialise dir in the loop where it is used.

Patch is here:
- [PATCH ipsec-next] xfrm: Initialise dir in xfrm_hash_rebuild()
  https://lore.kernel.org/netdev/[email-masked]/T/#u