AW: [PATCH][next][V2] io_uring: Fix uninitialized variable up.resv

From: Walter Harms
Date: Mon Apr 26 2021 - 06:44:07 EST


why not:
struct io_uring_rsrc_update up={0};

would be future proof :)

jm2c,

re,
wh
________________________________________
Von: Colin King <colin.king@xxxxxxxxxxxxx>
Gesendet: Montag, 26. April 2021 12:13:53
An: Jens Axboe; Pavel Begunkov; io-uring@xxxxxxxxxxxxxxx
Cc: kernel-janitors@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
Betreff: [PATCH][next][V2] io_uring: Fix uninitialized variable up.resv

WARNUNG: Diese E-Mail kam von außerhalb der Organisation. Klicken Sie nicht auf Links oder öffnen Sie keine Anhänge, es sei denn, Sie kennen den/die Absender*in und wissen, dass der Inhalt sicher ist.


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

The variable up.resv is not initialized and is being checking for a
non-zero value in the call to _io_register_rsrc_update. Fix this by
explicitly setting up.resv to 0.

Addresses-Coverity: ("Uninitialized scalar variable)"
Fixes: c3bdad027183 ("io_uring: add generic rsrc update with tags")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
Reviewed-by: Pavel Begunkov <asml.silence@xxxxxxxxx>
---

V2: replace "pointer" in commit message with "up.resv"

---
fs/io_uring.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/fs/io_uring.c b/fs/io_uring.c
index f4ec092c23f4..63f610ee274b 100644
--- a/fs/io_uring.c
+++ b/fs/io_uring.c
@@ -5842,6 +5842,7 @@ static int io_files_update(struct io_kiocb *req, unsigned int issue_flags)
up.data = req->rsrc_update.arg;
up.nr = 0;
up.tags = 0;
+ up.resv = 0;

mutex_lock(&ctx->uring_lock);
ret = __io_register_rsrc_update(ctx, IORING_RSRC_FILE,
--
2.30.2