* [PATCH] qemu-kvm/rbd: avoid opening eventfd twice and close it on exit
@ 2010-07-14 13:38 Christian Brunner
0 siblings, 0 replies; only message in thread
From: Christian Brunner @ 2010-07-14 13:38 UTC (permalink / raw)
To: ceph-devel
This patch removes the second call of eventfd/qemu_aio_set_fd_handler and closes
the filediscriptor on exit.
With this patch and the thread locking I'm able to run qemu-iotest without any
problem.
Christian
---
block/rbd.c | 12 +++---------
1 files changed, 3 insertions(+), 9 deletions(-)
diff --git a/block/rbd.c b/block/rbd.c
index 7a77072..9339dab 100644
--- a/block/rbd.c
+++ b/block/rbd.c
@@ -513,15 +513,6 @@ static int rbd_open(BlockDriverState *bs, const char *filename, int flags)
qemu_free(hbuf);
- s->efd = eventfd(0, 0);
- if (s->efd < 0) {
- error_report("error opening eventfd");
- goto failed;
- }
- fcntl(s->efd, F_SETFL, O_NONBLOCK);
- qemu_aio_set_fd_handler(s->efd, rbd_aio_completion_cb, NULL,
- rbd_aio_flush_cb, NULL, s);
-
return 0;
failed:
@@ -538,6 +529,9 @@ static void rbd_close(BlockDriverState *bs)
{
BDRVRBDState *s = bs->opaque;
+ close(s->efd);
+ qemu_aio_set_fd_handler(s->efd, NULL , NULL, NULL, NULL, NULL);
+
// The following do not exist in qemu:
// qemu_cond_destroy(s->queue_threshold);
// qemu_mutex_destroy(s->queue_mutex);
--
1.6.5.2
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2010-07-14 13:38 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-14 13:38 [PATCH] qemu-kvm/rbd: avoid opening eventfd twice and close it on exit Christian Brunner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).