[PATCH][xfs-next] xfs: fix uninitialized error variable

From: Colin King
Date: Thu Feb 21 2019 - 06:22:28 EST


From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

A previous commit removed the initialization of variable 'error' to zero,
and can cause a bogus error return. This occurs when error contains a
non-zero garbage value and the call to xchk_should_terminate detects a
pending fatal signal and checks for a zero error before setting it
to -EAGAIN. Fix the issue by initializing error to zero.

Fixes: b9454fe056bd ("xfs: clean up the inode cluster checking in the inobt scrub")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
---
fs/xfs/scrub/ialloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/xfs/scrub/ialloc.c b/fs/xfs/scrub/ialloc.c
index 2c9dad2b61b1..700114f79a7d 100644
--- a/fs/xfs/scrub/ialloc.c
+++ b/fs/xfs/scrub/ialloc.c
@@ -161,7 +161,7 @@ xchk_iallocbt_check_cluster_ifree(
bool irec_free;
bool ino_inuse;
bool freemask_ok;
- int error;
+ int error = 0;

if (xchk_should_terminate(bs->sc, &error))
return error;
--
2.20.1