diff --git a/fs/io_uring.c b/fs/io_uring.c index 2fb71b69cff3cee21e7854bb8893cc8cda4870df..58a204cb5337fe0d3b6c4bce7f8405269f3d7e02 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -2108,8 +2108,7 @@ static int io_setup_async_rw(struct io_kiocb *req, ssize_t io_size, struct iovec *iovec, struct iovec *fast_iov, struct iov_iter *iter) { - if (req->opcode == IORING_OP_READ_FIXED || - req->opcode == IORING_OP_WRITE_FIXED) + if (!io_op_defs[req->opcode].async_ctx) return 0; if (!req->io && io_alloc_async_ctx(req)) return -ENOMEM;