]> www.infradead.org Git - users/dwmw2/linux.git/commit
lightnvm: Fix uninitialized return value in nvm_get_chunk_meta()
authorGeert Uytterhoeven <geert@linux-m68k.org>
Tue, 11 Dec 2018 19:16:08 +0000 (20:16 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 12 Feb 2019 19:02:18 +0000 (20:02 +0100)
commit8fcd2eb827e14b49785db87ec704f6a8e08a6c2c
treee5084f1e7a12c1068c6f8c8c4b804ebf07775b3c
parentc7ce08e203f645dc617fcd8b6cfebfd7090a15da
lightnvm: Fix uninitialized return value in nvm_get_chunk_meta()

[ Upstream commit 55e58c5e78aad9d3246f57e7718cf5ee7adde9e3 ]

With gcc 4.1:

    drivers/lightnvm/core.c: In function ‘nvm_get_bb_meta’:
    drivers/lightnvm/core.c:977: warning: ‘ret’ may be used uninitialized in this function

and

    drivers/nvme/host/lightnvm.c: In function ‘nvme_nvm_get_chk_meta’:
    drivers/nvme/host/lightnvm.c:580: warning: ‘ret’ may be used uninitialized in this function

Indeed, if (for the former) the number of channels or LUNs is zero, or
(for both) the passed number of chunks is zero, ret will be returned
uninitialized.

Fix this by preinitializing ret to zero.

Fixes: aff3fb18f957de93 ("lightnvm: move bad block and chunk state logic to core")
Fixes: a294c199455187d1 ("lightnvm: implement get log report chunk helpers")
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/lightnvm/core.c
drivers/nvme/host/lightnvm.c