On Wed, Mar 05, 2025 at 06:27:56PM +0100, Arnd Bergmann wrote: > From: Arnd Bergmann <arnd@xxxxxxxx> > > The 'err' variable is set in a conditinal branch and is not > set otherwise: > > mm/mremap.c:1017:7: error: variable 'err' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] > 1017 | if (vma->vm_start != old_addr) > > Set it to zero before the initial value is set. > > Fixes: 3129f7896afb ("mm/mremap: initial refactor of move_vma()") > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Thanks for this, however this has already been fixed via Andrew doing a fix-patch which should land in mm-unstable,-next soon (possibly tmr?). This is entirely my bad btw, for some reason my compiler locally didn't catch this even with CONFIG_WERROR on which _really_ surprises me... > --- > mm/mremap.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/mm/mremap.c b/mm/mremap.c > index 456849b9e7bd..9c51a2360d84 100644 > --- a/mm/mremap.c > +++ b/mm/mremap.c > @@ -1014,6 +1014,7 @@ static unsigned long prep_move_vma(struct vma_remap_struct *vrm) > return -ENOMEM; > > if (vma->vm_ops && vma->vm_ops->may_split) { > + err = 0; > if (vma->vm_start != old_addr) > err = vma->vm_ops->may_split(vma, old_addr); > if (!err && vma->vm_end != old_addr + old_len) > -- > 2.39.5 >