erofs: silence uninitialized variable warning in z_erofs_scan_folio()
authorDan Carpenter <dan.carpenter@linaro.org>
Sat, 13 Jul 2024 01:04:16 +0000 (20:04 -0500)
committerGao Xiang <hsiangkao@linux.alibaba.com>
Sat, 13 Jul 2024 04:47:34 +0000 (12:47 +0800)
Smatch complains that:

    fs/erofs/zdata.c:1047 z_erofs_scan_folio()
    error: uninitialized symbol 'err'.

The issue is if we hit this (!(map->m_flags & EROFS_MAP_MAPPED)) {
condition then "err" isn't set.  It's inside a loop so we would have to
hit that condition on every iteration.  Initialize "err" to zero to
solve this.

Fixes: 5b9654efb604 ("erofs: teach z_erofs_scan_folios() to handle multi-page folios")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/r/f78ab50e-ed6d-4275-8dd4-a4159fa565a2@stanley.mountain
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
fs/erofs/zdata.c

index 544fa0f..424f656 100644 (file)
@@ -962,7 +962,7 @@ static int z_erofs_scan_folio(struct z_erofs_decompress_frontend *f,
        const unsigned int bs = i_blocksize(inode);
        unsigned int end = folio_size(folio), split = 0, cur, pgs;
        bool tight, excl;
-       int err;
+       int err = 0;
 
        tight = (bs == PAGE_SIZE);
        z_erofs_onlinefolio_init(folio);