From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40043) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X48oQ-0001XJ-My for qemu-devel@nongnu.org; Mon, 07 Jul 2014 09:18:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X48oH-0007IU-AI for qemu-devel@nongnu.org; Mon, 07 Jul 2014 09:18:30 -0400 Received: from mail-wi0-x234.google.com ([2a00:1450:400c:c05::234]:34963) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X48oH-0007IG-2H for qemu-devel@nongnu.org; Mon, 07 Jul 2014 09:18:21 -0400 Received: by mail-wi0-f180.google.com with SMTP id hi2so6697510wib.13 for ; Mon, 07 Jul 2014 06:18:12 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Mon, 7 Jul 2014 15:18:00 +0200 Message-Id: <1404739084-3783-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH for 2.1 0/4] AioContext cleanups and optimizations List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, stefanha@redhat.com These patches do some cleanup and optimization in AioContext land. The first two drop AIO functions that operate on the main AioContext. These are not needed anymore now that each BlockDriverState explicitly operates on its own AioContext. They are independent, and can be skipped if the maintainers prefer doing so or have comments. Patch 3 is a testsuite change for the aio_notify optimization, and patch 4 is the aio_notify patch, now with a better comment about the smp_mb optimization. Paolo Bonzini (4): block: prefer aio_poll to qemu_aio_wait block: drop aio functions that operate on the main AioContext test-aio: fix GSource-based timer test AioContext: speed up aio_notify aio-posix.c | 38 +++++++++++++++-- aio-win32.c | 6 +-- async.c | 19 ++++++++- block.c | 2 +- blockjob.c | 2 +- docs/aio_notify.promela | 104 ++++++++++++++++++++++++++++++++++++++++++++++ include/block/aio.h | 26 +++++------- include/block/blockjob.h | 4 +- include/block/coroutine.h | 2 +- main-loop.c | 21 ---------- qemu-io-cmds.c | 4 +- tests/test-aio.c | 13 +++--- tests/test-thread-pool.c | 4 +- 13 files changed, 186 insertions(+), 59 deletions(-) create mode 100644 docs/aio_notify.promela -- 1.8.3.1