[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 04/19] block: mark AioContext as recursive
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PULL 04/19] block: mark AioContext as recursive |
Date: |
Fri, 19 Dec 2014 17:34:54 +0100 |
From: Paolo Bonzini <address@hidden>
AioContext can be accessed recursively, in fact that's what we do with
aio_poll. Marking the GSource as recursive avoids that GLib blocks it
and unblocks it around every call to aio_dispatch, which is a pretty
expensive operation.
Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
---
async.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/async.c b/async.c
index 3939b79..572f239 100644
--- a/async.c
+++ b/async.c
@@ -300,6 +300,7 @@ AioContext *aio_context_new(Error **errp)
error_setg_errno(errp, -ret, "Failed to initialize event notifier");
return NULL;
}
+ g_source_set_can_recurse(&ctx->source, true);
aio_set_event_notifier(ctx, &ctx->notifier,
(EventNotifierHandler *)
event_notifier_test_and_clear);
--
1.8.3.1
- [Qemu-devel] [PULL 18/19] linux-aio: drop return code from laio_io_unplug and ioq_submit, (continued)
- [Qemu-devel] [PULL 18/19] linux-aio: drop return code from laio_io_unplug and ioq_submit, Stefan Hajnoczi, 2014/12/12
- [Qemu-devel] [PULL 19/19] linux-aio: simplify removal of completed iocbs from the list, Stefan Hajnoczi, 2014/12/12
- [Qemu-devel] [PULL 12/19] qemu-iotests: Remove traling whitespaces in *.out, Stefan Hajnoczi, 2014/12/12
- Re: [Qemu-devel] [PULL 00/19] Block patches, Peter Maydell, 2014/12/15
- [Qemu-devel] [PULL 00/19] Block patches, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 02/19] qemu-iotests: Speed up make check-block, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 05/19] block: do not allocate an iovec per read of a growable/zero_after_eof BDS, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 06/19] block: replace g_new0 with g_new for bottom half allocation., Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 01/19] qemu-iotests: Remove 091 from quick group, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 07/19] checkpatch: Brace handling on multi-line condition, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 04/19] block: mark AioContext as recursive,
Kevin Wolf <=
- [Qemu-devel] [PULL 12/19] iotests: Add test for relative backing file names, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 03/19] tests/Makefile: Add check-block to make check, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 11/19] block/vmdk: Relative backing file for creation, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 08/19] block: Get full backing filename from string, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 14/19] block: fix spoiling all dirty bitmaps by mirror and migration, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 10/19] block: Relative backing file for image creation, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 09/19] block: JSON filenames and relative backing files, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 13/19] qapi: Fix document for BlockStats.node-name, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 15/19] qapi: Comment version info in TransactionAction, Kevin Wolf, 2014/12/19
- [Qemu-devel] [PULL 18/19] qemu-iotests: Test blockdev-backup in 055, Kevin Wolf, 2014/12/19