]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
io_uring/rsrc: remove redundant check for valid imu
authorKeith Busch <kbusch@kernel.org>
Mon, 24 Feb 2025 21:31:06 +0000 (13:31 -0800)
committerJens Axboe <axboe@kernel.dk>
Thu, 27 Feb 2025 14:17:39 +0000 (07:17 -0700)
The only caller to io_buffer_unmap already checks if the node's buf is
not null, so no need to check again.

Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Pavel Begunkov <asml.silence@gmail.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20250224213116.3509093-2-kbusch@meta.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/rsrc.c

index af39b69eb4fde8b6e478e71c36dc04d3eec1b6d1..f3a41132a966870a98bb1117d107db32d6c1b6bc 100644 (file)
@@ -103,19 +103,16 @@ static int io_buffer_validate(struct iovec *iov)
 
 static void io_buffer_unmap(struct io_ring_ctx *ctx, struct io_rsrc_node *node)
 {
+       struct io_mapped_ubuf *imu = node->buf;
        unsigned int i;
 
-       if (node->buf) {
-               struct io_mapped_ubuf *imu = node->buf;
-
-               if (!refcount_dec_and_test(&imu->refs))
-                       return;
-               for (i = 0; i < imu->nr_bvecs; i++)
-                       unpin_user_page(imu->bvec[i].bv_page);
-               if (imu->acct_pages)
-                       io_unaccount_mem(ctx, imu->acct_pages);
-               kvfree(imu);
-       }
+       if (!refcount_dec_and_test(&imu->refs))
+               return;
+       for (i = 0; i < imu->nr_bvecs; i++)
+               unpin_user_page(imu->bvec[i].bv_page);
+       if (imu->acct_pages)
+               io_unaccount_mem(ctx, imu->acct_pages);
+       kvfree(imu);
 }
 
 struct io_rsrc_node *io_rsrc_node_alloc(int type)