]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
io_uring: fix shadowed variable ret return code being not checked
authorColin Ian King <colin.king@canonical.com>
Sun, 5 May 2019 22:01:22 +0000 (23:01 +0100)
committerJens Axboe <axboe@kernel.dk>
Mon, 6 May 2019 16:21:34 +0000 (10:21 -0600)
Currently variable ret is declared in a while-loop code block that
shadows another variable ret. When an error occurs in the while-loop
the error return in ret is not being set in the outer code block and
so the error check on ret is always going to be checking on the wrong
ret variable resulting in check that is always going to be true and
a premature return occurs.

Fix this by removing the declaration of the inner while-loop variable
ret so that shadowing does not occur.

Addresses-Coverity: ("'Constant' variable guards dead code")
Fixes: 6b06314c47e1 ("io_uring: add file set registration")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c

index d91cbd53d3ca4cc21f2420217dc48e6f0b8fe1c8..1157a068c253e5db92f50f5e2c940919c4930434 100644 (file)
@@ -2363,7 +2363,6 @@ static int io_sqe_files_scm(struct io_ring_ctx *ctx)
        left = ctx->nr_user_files;
        while (left) {
                unsigned this_files = min_t(unsigned, left, SCM_MAX_FD);
-               int ret;
 
                ret = __io_sqe_files_scm(ctx, this_files, total);
                if (ret)