]> git.baikalelectronics.ru Git - kernel.git/commitdiff
io_uring: fix two assignments in if conditions
authorXinghui Li <korantli@tencent.com>
Wed, 2 Nov 2022 08:25:03 +0000 (16:25 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 11 Mar 2023 12:55:43 +0000 (13:55 +0100)
commit 8a6acc68c1b963397b13765e20cf1be972525ece upstream.

Fixes two errors:

"ERROR: do not use assignment in if condition
130: FILE: io_uring/net.c:130:
+       if (!(issue_flags & IO_URING_F_UNLOCKED) &&

ERROR: do not use assignment in if condition
599: FILE: io_uring/poll.c:599:
+       } else if (!(issue_flags & IO_URING_F_UNLOCKED) &&"
reported by checkpatch.pl in net.c and poll.c .

Signed-off-by: Xinghui Li <korantli@tencent.com>
Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/r/20221102082503.32236-1-korantwork@gmail.com
[axboe: style tweaks]
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
io_uring/net.c
io_uring/poll.c

index 55d822beaf084c03289d3dbc5071662ff3361d92..4fdc2770bbe440af8685705d22458c498492461e 100644 (file)
@@ -126,13 +126,15 @@ static struct io_async_msghdr *io_msg_alloc_async(struct io_kiocb *req,
        struct io_cache_entry *entry;
        struct io_async_msghdr *hdr;
 
-       if (!(issue_flags & IO_URING_F_UNLOCKED) &&
-           (entry = io_alloc_cache_get(&ctx->netmsg_cache)) != NULL) {
-               hdr = container_of(entry, struct io_async_msghdr, cache);
-               hdr->free_iov = NULL;
-               req->flags |= REQ_F_ASYNC_DATA;
-               req->async_data = hdr;
-               return hdr;
+       if (!(issue_flags & IO_URING_F_UNLOCKED)) {
+               entry = io_alloc_cache_get(&ctx->netmsg_cache);
+               if (entry) {
+                       hdr = container_of(entry, struct io_async_msghdr, cache);
+                       hdr->free_iov = NULL;
+                       req->flags |= REQ_F_ASYNC_DATA;
+                       req->async_data = hdr;
+                       return hdr;
+               }
        }
 
        if (!io_alloc_async_data(req)) {
index ab5ae475840f416d7061a915706bfbbfc61b9ff2..8aa9dd9e504a62f7c1024af3988667b87b5e3885 100644 (file)
@@ -678,10 +678,13 @@ static struct async_poll *io_req_alloc_apoll(struct io_kiocb *req,
        if (req->flags & REQ_F_POLLED) {
                apoll = req->apoll;
                kfree(apoll->double_poll);
-       } else if (!(issue_flags & IO_URING_F_UNLOCKED) &&
-                  (entry = io_alloc_cache_get(&ctx->apoll_cache)) != NULL) {
+       } else if (!(issue_flags & IO_URING_F_UNLOCKED)) {
+               entry = io_alloc_cache_get(&ctx->apoll_cache);
+               if (entry == NULL)
+                       goto alloc_apoll;
                apoll = container_of(entry, struct async_poll, cache);
        } else {
+alloc_apoll:
                apoll = kmalloc(sizeof(*apoll), GFP_ATOMIC);
                if (unlikely(!apoll))
                        return NULL;