[PATCH] mm/mremap: fix uninitialized return code
From: Arnd Bergmann
Date: Wed Mar 05 2025 - 12:28:24 EST
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>
---
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