block/rbd: drop qemu_rbd_aio_flush_cb()
.io_flush() is no longer called so drop qemu_rbd_aio_flush_cb(). qemu_aio_count is unused now so drop it too. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
bed2e759eb
commit
5d289cc724
14
block/rbd.c
14
block/rbd.c
@ -100,7 +100,6 @@ typedef struct BDRVRBDState {
|
|||||||
rados_ioctx_t io_ctx;
|
rados_ioctx_t io_ctx;
|
||||||
rbd_image_t image;
|
rbd_image_t image;
|
||||||
char name[RBD_MAX_IMAGE_NAME_SIZE];
|
char name[RBD_MAX_IMAGE_NAME_SIZE];
|
||||||
int qemu_aio_count;
|
|
||||||
char *snap;
|
char *snap;
|
||||||
int event_reader_pos;
|
int event_reader_pos;
|
||||||
RADOSCB *event_rcb;
|
RADOSCB *event_rcb;
|
||||||
@ -428,19 +427,11 @@ static void qemu_rbd_aio_event_reader(void *opaque)
|
|||||||
if (s->event_reader_pos == sizeof(s->event_rcb)) {
|
if (s->event_reader_pos == sizeof(s->event_rcb)) {
|
||||||
s->event_reader_pos = 0;
|
s->event_reader_pos = 0;
|
||||||
qemu_rbd_complete_aio(s->event_rcb);
|
qemu_rbd_complete_aio(s->event_rcb);
|
||||||
s->qemu_aio_count--;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (ret < 0 && errno == EINTR);
|
} while (ret < 0 && errno == EINTR);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int qemu_rbd_aio_flush_cb(void *opaque)
|
|
||||||
{
|
|
||||||
BDRVRBDState *s = opaque;
|
|
||||||
|
|
||||||
return (s->qemu_aio_count > 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* TODO Convert to fine grained options */
|
/* TODO Convert to fine grained options */
|
||||||
static QemuOptsList runtime_opts = {
|
static QemuOptsList runtime_opts = {
|
||||||
.name = "rbd",
|
.name = "rbd",
|
||||||
@ -554,7 +545,7 @@ static int qemu_rbd_open(BlockDriverState *bs, QDict *options, int flags)
|
|||||||
fcntl(s->fds[0], F_SETFL, O_NONBLOCK);
|
fcntl(s->fds[0], F_SETFL, O_NONBLOCK);
|
||||||
fcntl(s->fds[1], F_SETFL, O_NONBLOCK);
|
fcntl(s->fds[1], F_SETFL, O_NONBLOCK);
|
||||||
qemu_aio_set_fd_handler(s->fds[RBD_FD_READ], qemu_rbd_aio_event_reader,
|
qemu_aio_set_fd_handler(s->fds[RBD_FD_READ], qemu_rbd_aio_event_reader,
|
||||||
NULL, qemu_rbd_aio_flush_cb, s);
|
NULL, NULL, s);
|
||||||
|
|
||||||
|
|
||||||
qemu_opts_del(opts);
|
qemu_opts_del(opts);
|
||||||
@ -741,8 +732,6 @@ static BlockDriverAIOCB *rbd_start_aio(BlockDriverState *bs,
|
|||||||
off = sector_num * BDRV_SECTOR_SIZE;
|
off = sector_num * BDRV_SECTOR_SIZE;
|
||||||
size = nb_sectors * BDRV_SECTOR_SIZE;
|
size = nb_sectors * BDRV_SECTOR_SIZE;
|
||||||
|
|
||||||
s->qemu_aio_count++; /* All the RADOSCB */
|
|
||||||
|
|
||||||
rcb = g_malloc(sizeof(RADOSCB));
|
rcb = g_malloc(sizeof(RADOSCB));
|
||||||
rcb->done = 0;
|
rcb->done = 0;
|
||||||
rcb->acb = acb;
|
rcb->acb = acb;
|
||||||
@ -779,7 +768,6 @@ static BlockDriverAIOCB *rbd_start_aio(BlockDriverState *bs,
|
|||||||
|
|
||||||
failed:
|
failed:
|
||||||
g_free(rcb);
|
g_free(rcb);
|
||||||
s->qemu_aio_count--;
|
|
||||||
qemu_aio_release(acb);
|
qemu_aio_release(acb);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user