[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 12/15] block/nvme: Replace BDRV_POLL_WHILE by AIO_WAIT_WHILE
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v6 12/15] block/nvme: Replace BDRV_POLL_WHILE by AIO_WAIT_WHILE |
Date: |
Fri, 21 Aug 2020 21:53:56 +0200 |
BDRV_POLL_WHILE() is defined as:
#define BDRV_POLL_WHILE(bs, cond) ({ \
BlockDriverState *bs_ = (bs); \
AIO_WAIT_WHILE(bdrv_get_aio_context(bs_), \
cond); })
As we will remove the BlockDriverState use in the next commit,
start by using the exploded version of BDRV_POLL_WHILE().
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
block/nvme.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/block/nvme.c b/block/nvme.c
index f98ca067144..3d49ff81fb7 100644
--- a/block/nvme.c
+++ b/block/nvme.c
@@ -493,6 +493,7 @@ static void nvme_cmd_sync_cb(void *opaque, int ret)
static int nvme_cmd_sync(BlockDriverState *bs, NVMeQueuePair *q,
NvmeCmd *cmd)
{
+ AioContext *aio_context = bdrv_get_aio_context(bs);
NVMeRequest *req;
int ret = -EINPROGRESS;
req = nvme_get_free_req(q);
@@ -501,7 +502,7 @@ static int nvme_cmd_sync(BlockDriverState *bs,
NVMeQueuePair *q,
}
nvme_submit_command(q, req, cmd, nvme_cmd_sync_cb, &ret);
- BDRV_POLL_WHILE(bs, ret == -EINPROGRESS);
+ AIO_WAIT_WHILE(aio_context, ret == -EINPROGRESS);
return ret;
}
--
2.26.2
- [PATCH v6 02/15] block/nvme: Avoid further processing if trace event not enabled, (continued)
- [PATCH v6 02/15] block/nvme: Avoid further processing if trace event not enabled, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 03/15] block/nvme: Let nvme_create_queue_pair() fail gracefully, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 04/15] block/nvme: Define INDEX macros to ease code review, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 05/15] block/nvme: Improve error message when IO queue creation failed, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 06/15] block/nvme: Use common error path in nvme_add_io_queue(), Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 07/15] block/nvme: Rename local variable, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 08/15] block/nvme: Use union of NvmeIdCtrl / NvmeIdNs structures, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 09/15] block/nvme: Replace qemu_try_blockalign0 by qemu_try_blockalign/memset, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 10/15] block/nvme: Replace qemu_try_blockalign(bs) by qemu_try_memalign(pg_sz), Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 11/15] block/nvme: Simplify nvme_init_queue() arguments, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 12/15] block/nvme: Replace BDRV_POLL_WHILE by AIO_WAIT_WHILE,
Philippe Mathieu-Daudé <=
- [PATCH v6 13/15] block/nvme: Simplify nvme_create_queue_pair() arguments, Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 14/15] block/nvme: Extract nvme_poll_queue(), Philippe Mathieu-Daudé, 2020/08/21
- [PATCH v6 15/15] block/nvme: Use an array of EventNotifier, Philippe Mathieu-Daudé, 2020/08/21