From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:52869) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S79tb-0006GB-9t for qemu-devel@nongnu.org; Mon, 12 Mar 2012 14:23:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S79tD-0001hG-IB for qemu-devel@nongnu.org; Mon, 12 Mar 2012 14:22:58 -0400 Received: from mail-ey0-f173.google.com ([209.85.215.173]:58373) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S79tD-0001gq-9W for qemu-devel@nongnu.org; Mon, 12 Mar 2012 14:22:35 -0400 Received: by eaaf11 with SMTP id f11so1620797eaa.4 for ; Mon, 12 Mar 2012 11:22:33 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Mon, 12 Mar 2012 19:22:21 +0100 Message-Id: <1331576548-23067-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH 0/7] AIO nested loop and bdrv_drain_all changes List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org This series includes several changes that, in different ways, touch the aio.c main loop. Patches 1 and 2 let the tools use timers. Patches 3 to 6 simplify the aio loop by removing the separate process_queue callback, and by adding a return value to qemu_aio_wait. (Mostly extracted from my threading experiments, and retested). Patch 7 is zwu's patch to drain requests correctly in the presence of I/O throttling. This version does not add bdrv_drain; see comments in the patch and on the mailing list. Paolo Bonzini (6): qemu-io: use main_loop_wait qemu-tool: map vm_clock to rt_clock posix-aio: merge posix_aio_process_queue and posix_aio_read aio: remove process_queue callback and qemu_aio_process_queue aio: return "AIO in progress" state from qemu_aio_wait aio: simplify qemu_aio_wait Zhi Yong Wu (1): block: add the support to drain throttled requests aio.c | 176 +++++++++++++++++++++------------------------------- block.c | 21 ++++++- block/curl.c | 10 +-- block/iscsi.c | 4 +- block/nbd.c | 8 +- block/rbd.c | 5 +- block/sheepdog.c | 11 ++-- cmd.c | 10 ++-- linux-aio.c | 2 +- posix-aio-compat.c | 45 +++++--------- qemu-aio.h | 19 +----- qemu-io.c | 7 +- qemu-tool.c | 3 +- 13 files changed, 139 insertions(+), 182 deletions(-) -- 1.7.7.6