mirror of https://github.com/xqemu/xqemu.git
block: Rename qemu_aio_release -> qemu_aio_unref
Suggested-by: Benoît Canet <benoit.canet@irqsave.net> Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
ca5fd113b8
commit
8007429a99
8
block.c
8
block.c
|
@ -4651,7 +4651,7 @@ void bdrv_aio_cancel(BlockDriverAIOCB *acb)
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Async version of aio cancel. The caller is not blocked if the acb implements
|
/* Async version of aio cancel. The caller is not blocked if the acb implements
|
||||||
|
@ -4692,7 +4692,7 @@ static void bdrv_aio_bh_cb(void *opaque)
|
||||||
acb->common.cb(acb->common.opaque, acb->ret);
|
acb->common.cb(acb->common.opaque, acb->ret);
|
||||||
qemu_bh_delete(acb->bh);
|
qemu_bh_delete(acb->bh);
|
||||||
acb->bh = NULL;
|
acb->bh = NULL;
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
static BlockDriverAIOCB *bdrv_aio_rw_vector(BlockDriverState *bs,
|
static BlockDriverAIOCB *bdrv_aio_rw_vector(BlockDriverState *bs,
|
||||||
|
@ -4760,7 +4760,7 @@ static void bdrv_co_em_bh(void *opaque)
|
||||||
acb->common.cb(acb->common.opaque, acb->req.error);
|
acb->common.cb(acb->common.opaque, acb->req.error);
|
||||||
|
|
||||||
qemu_bh_delete(acb->bh);
|
qemu_bh_delete(acb->bh);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Invoke bdrv_co_do_readv/bdrv_co_do_writev */
|
/* Invoke bdrv_co_do_readv/bdrv_co_do_writev */
|
||||||
|
@ -4891,7 +4891,7 @@ void qemu_aio_ref(void *p)
|
||||||
acb->refcnt++;
|
acb->refcnt++;
|
||||||
}
|
}
|
||||||
|
|
||||||
void qemu_aio_release(void *p)
|
void qemu_aio_unref(void *p)
|
||||||
{
|
{
|
||||||
BlockDriverAIOCB *acb = p;
|
BlockDriverAIOCB *acb = p;
|
||||||
assert(acb->refcnt > 0);
|
assert(acb->refcnt > 0);
|
||||||
|
|
|
@ -317,7 +317,7 @@ static void qemu_archipelago_complete_aio(void *opaque)
|
||||||
aio_cb->common.cb(aio_cb->common.opaque, aio_cb->ret);
|
aio_cb->common.cb(aio_cb->common.opaque, aio_cb->ret);
|
||||||
aio_cb->status = 0;
|
aio_cb->status = 0;
|
||||||
|
|
||||||
qemu_aio_release(aio_cb);
|
qemu_aio_unref(aio_cb);
|
||||||
g_free(reqdata);
|
g_free(reqdata);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -890,7 +890,7 @@ static BlockDriverAIOCB *qemu_archipelago_aio_rw(BlockDriverState *bs,
|
||||||
|
|
||||||
err_exit:
|
err_exit:
|
||||||
error_report("qemu_archipelago_aio_rw(): I/O Error\n");
|
error_report("qemu_archipelago_aio_rw(): I/O Error\n");
|
||||||
qemu_aio_release(aio_cb);
|
qemu_aio_unref(aio_cb);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -444,7 +444,7 @@ static void error_callback_bh(void *opaque)
|
||||||
struct BlkdebugAIOCB *acb = opaque;
|
struct BlkdebugAIOCB *acb = opaque;
|
||||||
qemu_bh_delete(acb->bh);
|
qemu_bh_delete(acb->bh);
|
||||||
acb->common.cb(acb->common.opaque, acb->ret);
|
acb->common.cb(acb->common.opaque, acb->ret);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
static BlockDriverAIOCB *inject_error(BlockDriverState *bs,
|
static BlockDriverAIOCB *inject_error(BlockDriverState *bs,
|
||||||
|
|
|
@ -192,7 +192,7 @@ static void blkverify_aio_bh(void *opaque)
|
||||||
qemu_vfree(acb->buf);
|
qemu_vfree(acb->buf);
|
||||||
}
|
}
|
||||||
acb->common.cb(acb->common.opaque, acb->ret);
|
acb->common.cb(acb->common.opaque, acb->ret);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void blkverify_aio_cb(void *opaque, int ret)
|
static void blkverify_aio_cb(void *opaque, int ret)
|
||||||
|
|
10
block/curl.c
10
block/curl.c
|
@ -212,7 +212,7 @@ static size_t curl_read_cb(void *ptr, size_t size, size_t nmemb, void *opaque)
|
||||||
qemu_iovec_from_buf(acb->qiov, 0, s->orig_buf + acb->start,
|
qemu_iovec_from_buf(acb->qiov, 0, s->orig_buf + acb->start,
|
||||||
acb->end - acb->start);
|
acb->end - acb->start);
|
||||||
acb->common.cb(acb->common.opaque, 0);
|
acb->common.cb(acb->common.opaque, 0);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
s->acb[i] = NULL;
|
s->acb[i] = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -304,7 +304,7 @@ static void curl_multi_check_completion(BDRVCURLState *s)
|
||||||
}
|
}
|
||||||
|
|
||||||
acb->common.cb(acb->common.opaque, -EIO);
|
acb->common.cb(acb->common.opaque, -EIO);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
state->acb[i] = NULL;
|
state->acb[i] = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -636,7 +636,7 @@ static void curl_readv_bh_cb(void *p)
|
||||||
// we can just call the callback and be done.
|
// we can just call the callback and be done.
|
||||||
switch (curl_find_buf(s, start, acb->nb_sectors * SECTOR_SIZE, acb)) {
|
switch (curl_find_buf(s, start, acb->nb_sectors * SECTOR_SIZE, acb)) {
|
||||||
case FIND_RET_OK:
|
case FIND_RET_OK:
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
// fall through
|
// fall through
|
||||||
case FIND_RET_WAIT:
|
case FIND_RET_WAIT:
|
||||||
return;
|
return;
|
||||||
|
@ -648,7 +648,7 @@ static void curl_readv_bh_cb(void *p)
|
||||||
state = curl_init_state(acb->common.bs, s);
|
state = curl_init_state(acb->common.bs, s);
|
||||||
if (!state) {
|
if (!state) {
|
||||||
acb->common.cb(acb->common.opaque, -EIO);
|
acb->common.cb(acb->common.opaque, -EIO);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -664,7 +664,7 @@ static void curl_readv_bh_cb(void *p)
|
||||||
if (state->buf_len && state->orig_buf == NULL) {
|
if (state->buf_len && state->orig_buf == NULL) {
|
||||||
curl_clean_state(state);
|
curl_clean_state(state);
|
||||||
acb->common.cb(acb->common.opaque, -ENOMEM);
|
acb->common.cb(acb->common.opaque, -ENOMEM);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
state->acb[0] = acb;
|
state->acb[0] = acb;
|
||||||
|
|
|
@ -126,7 +126,7 @@ iscsi_bh_cb(void *p)
|
||||||
acb->task = NULL;
|
acb->task = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -680,7 +680,7 @@ static BlockDriverAIOCB *iscsi_aio_ioctl(BlockDriverState *bs,
|
||||||
if (acb->task == NULL) {
|
if (acb->task == NULL) {
|
||||||
error_report("iSCSI: Failed to allocate task for scsi command. %s",
|
error_report("iSCSI: Failed to allocate task for scsi command. %s",
|
||||||
iscsi_get_error(iscsi));
|
iscsi_get_error(iscsi));
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
memset(acb->task, 0, sizeof(struct scsi_task));
|
memset(acb->task, 0, sizeof(struct scsi_task));
|
||||||
|
@ -718,7 +718,7 @@ static BlockDriverAIOCB *iscsi_aio_ioctl(BlockDriverState *bs,
|
||||||
(data.size > 0) ? &data : NULL,
|
(data.size > 0) ? &data : NULL,
|
||||||
acb) != 0) {
|
acb) != 0) {
|
||||||
scsi_free_scsi_task(acb->task);
|
scsi_free_scsi_task(acb->task);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -88,7 +88,7 @@ static void qemu_laio_process_completion(struct qemu_laio_state *s,
|
||||||
}
|
}
|
||||||
laiocb->common.cb(laiocb->common.opaque, ret);
|
laiocb->common.cb(laiocb->common.opaque, ret);
|
||||||
|
|
||||||
qemu_aio_release(laiocb);
|
qemu_aio_unref(laiocb);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The completion BH fetches completed I/O requests and invokes their
|
/* The completion BH fetches completed I/O requests and invokes their
|
||||||
|
@ -286,7 +286,7 @@ BlockDriverAIOCB *laio_submit(BlockDriverState *bs, void *aio_ctx, int fd,
|
||||||
return &laiocb->common;
|
return &laiocb->common;
|
||||||
|
|
||||||
out_free_aiocb:
|
out_free_aiocb:
|
||||||
qemu_aio_release(laiocb);
|
qemu_aio_unref(laiocb);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -907,7 +907,7 @@ static void qed_aio_complete_bh(void *opaque)
|
||||||
int ret = acb->bh_ret;
|
int ret = acb->bh_ret;
|
||||||
|
|
||||||
qemu_bh_delete(acb->bh);
|
qemu_bh_delete(acb->bh);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
|
|
||||||
/* Invoke callback */
|
/* Invoke callback */
|
||||||
cb(user_opaque, ret);
|
cb(user_opaque, ret);
|
||||||
|
|
|
@ -168,7 +168,7 @@ static void quorum_aio_finalize(QuorumAIOCB *acb)
|
||||||
}
|
}
|
||||||
|
|
||||||
g_free(acb->qcrs);
|
g_free(acb->qcrs);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool quorum_sha256_compare(QuorumVoteValue *a, QuorumVoteValue *b)
|
static bool quorum_sha256_compare(QuorumVoteValue *a, QuorumVoteValue *b)
|
||||||
|
|
|
@ -407,7 +407,7 @@ static void qemu_rbd_complete_aio(RADOSCB *rcb)
|
||||||
acb->common.cb(acb->common.opaque, (acb->ret > 0 ? 0 : acb->ret));
|
acb->common.cb(acb->common.opaque, (acb->ret > 0 ? 0 : acb->ret));
|
||||||
acb->status = 0;
|
acb->status = 0;
|
||||||
|
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* TODO Convert to fine grained options */
|
/* TODO Convert to fine grained options */
|
||||||
|
@ -671,7 +671,7 @@ failed_completion:
|
||||||
failed:
|
failed:
|
||||||
g_free(rcb);
|
g_free(rcb);
|
||||||
qemu_vfree(acb->bounce);
|
qemu_vfree(acb->bounce);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -445,7 +445,7 @@ static inline void free_aio_req(BDRVSheepdogState *s, AIOReq *aio_req)
|
||||||
static void coroutine_fn sd_finish_aiocb(SheepdogAIOCB *acb)
|
static void coroutine_fn sd_finish_aiocb(SheepdogAIOCB *acb)
|
||||||
{
|
{
|
||||||
qemu_coroutine_enter(acb->coroutine, NULL);
|
qemu_coroutine_enter(acb->coroutine, NULL);
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -2130,7 +2130,7 @@ static coroutine_fn int sd_co_writev(BlockDriverState *bs, int64_t sector_num,
|
||||||
|
|
||||||
ret = sd_co_rw_vector(acb);
|
ret = sd_co_rw_vector(acb);
|
||||||
if (ret <= 0) {
|
if (ret <= 0) {
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2151,7 +2151,7 @@ static coroutine_fn int sd_co_readv(BlockDriverState *bs, int64_t sector_num,
|
||||||
|
|
||||||
ret = sd_co_rw_vector(acb);
|
ret = sd_co_rw_vector(acb);
|
||||||
if (ret <= 0) {
|
if (ret <= 0) {
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2510,7 +2510,7 @@ static coroutine_fn int sd_co_discard(BlockDriverState *bs, int64_t sector_num,
|
||||||
|
|
||||||
ret = sd_co_rw_vector(acb);
|
ret = sd_co_rw_vector(acb);
|
||||||
if (ret <= 0) {
|
if (ret <= 0) {
|
||||||
qemu_aio_release(acb);
|
qemu_aio_unref(acb);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -88,7 +88,7 @@ static void win32_aio_process_completion(QEMUWin32AIOState *s,
|
||||||
|
|
||||||
|
|
||||||
waiocb->common.cb(waiocb->common.opaque, ret);
|
waiocb->common.cb(waiocb->common.opaque, ret);
|
||||||
qemu_aio_release(waiocb);
|
qemu_aio_unref(waiocb);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void win32_aio_completion_cb(EventNotifier *e)
|
static void win32_aio_completion_cb(EventNotifier *e)
|
||||||
|
@ -158,7 +158,7 @@ BlockDriverAIOCB *win32_aio_submit(BlockDriverState *bs,
|
||||||
out_dec_count:
|
out_dec_count:
|
||||||
aio->count--;
|
aio->count--;
|
||||||
out:
|
out:
|
||||||
qemu_aio_release(waiocb);
|
qemu_aio_unref(waiocb);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,7 @@ static void dma_complete(DMAAIOCB *dbs, int ret)
|
||||||
qemu_bh_delete(dbs->bh);
|
qemu_bh_delete(dbs->bh);
|
||||||
dbs->bh = NULL;
|
dbs->bh = NULL;
|
||||||
}
|
}
|
||||||
qemu_aio_release(dbs);
|
qemu_aio_unref(dbs);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dma_bdrv_cb(void *opaque, int ret)
|
static void dma_bdrv_cb(void *opaque, int ret)
|
||||||
|
|
|
@ -397,7 +397,7 @@ static void ide_trim_bh_cb(void *opaque)
|
||||||
|
|
||||||
qemu_bh_delete(iocb->bh);
|
qemu_bh_delete(iocb->bh);
|
||||||
iocb->bh = NULL;
|
iocb->bh = NULL;
|
||||||
qemu_aio_release(iocb);
|
qemu_aio_unref(iocb);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ide_issue_trim_cb(void *opaque, int ret)
|
static void ide_issue_trim_cb(void *opaque, int ret)
|
||||||
|
|
|
@ -41,7 +41,7 @@ struct BlockDriverAIOCB {
|
||||||
|
|
||||||
void *qemu_aio_get(const AIOCBInfo *aiocb_info, BlockDriverState *bs,
|
void *qemu_aio_get(const AIOCBInfo *aiocb_info, BlockDriverState *bs,
|
||||||
BlockDriverCompletionFunc *cb, void *opaque);
|
BlockDriverCompletionFunc *cb, void *opaque);
|
||||||
void qemu_aio_release(void *p);
|
void qemu_aio_unref(void *p);
|
||||||
void qemu_aio_ref(void *p);
|
void qemu_aio_ref(void *p);
|
||||||
|
|
||||||
typedef struct AioHandler AioHandler;
|
typedef struct AioHandler AioHandler;
|
||||||
|
|
|
@ -185,12 +185,12 @@ restart:
|
||||||
qemu_bh_schedule(pool->completion_bh);
|
qemu_bh_schedule(pool->completion_bh);
|
||||||
|
|
||||||
elem->common.cb(elem->common.opaque, elem->ret);
|
elem->common.cb(elem->common.opaque, elem->ret);
|
||||||
qemu_aio_release(elem);
|
qemu_aio_unref(elem);
|
||||||
goto restart;
|
goto restart;
|
||||||
} else {
|
} else {
|
||||||
/* remove the request */
|
/* remove the request */
|
||||||
QLIST_REMOVE(elem, all);
|
QLIST_REMOVE(elem, all);
|
||||||
qemu_aio_release(elem);
|
qemu_aio_unref(elem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue