qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/10] block: Coroutine support
@ 2011-07-26 11:48 Kevin Wolf
  2011-07-26 11:48 ` [Qemu-devel] [PATCH 01/10] block: Add bdrv_co_readv/writev Kevin Wolf
                   ` (11 more replies)
  0 siblings, 12 replies; 23+ messages in thread
From: Kevin Wolf @ 2011-07-26 11:48 UTC (permalink / raw)
  To: qemu-devel; +Cc: kwolf, stefanha

Depends on Stefan's latest coroutine patches. This series makes qcow and qcow2
take advantage of the new coroutine infrastructure. Both formats used
synchronous operations for accessing their metadata and blocked the guest CPU
during that time. With coroutines, the I/O will happen asynchronously in the
background and the CPU won't be blocked any more.

Kevin Wolf (10):
  block: Add bdrv_co_readv/writev
  block: Emulate AIO functions with bdrv_co_readv/writev
  block: Add bdrv_co_readv/writev emulation
  coroutines: Locks
  qcow2: Use coroutines
  qcow: Use coroutines
  async: Remove AsyncContext
  coroutines: Use one global bottom half for CoQueue
  posix-aio-compat: Allow read after EOF
  block: Use bdrv_co_* instead of synchronous versions in coroutines

 Makefile.objs         |    4 +-
 async.c               |   98 ++-----------------
 block.c               |  271 ++++++++++++++++++++++++++++++++++++++++++++++--
 block.h               |    5 +
 block/qcow.c          |  180 +++++++++++---------------------
 block/qcow2-cluster.c |   26 ++---
 block/qcow2.c         |  240 ++++++++++++++++----------------------------
 block/qcow2.h         |    5 +-
 block/qed-table.c     |   14 ---
 block/qed.c           |    4 -
 block_int.h           |    6 +
 linux-aio.c           |   43 +-------
 posix-aio-compat.c    |   30 ++++--
 qemu-common.h         |    4 -
 qemu-coroutine-int.h  |    1 +
 qemu-coroutine-lock.c |  117 +++++++++++++++++++++
 qemu-coroutine.h      |   64 ++++++++++++
 trace-events          |   11 ++
 18 files changed, 659 insertions(+), 464 deletions(-)
 create mode 100644 qemu-coroutine-lock.c

-- 
1.7.6

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2011-08-02 15:11 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-26 11:48 [Qemu-devel] [PATCH 00/10] block: Coroutine support Kevin Wolf
2011-07-26 11:48 ` [Qemu-devel] [PATCH 01/10] block: Add bdrv_co_readv/writev Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 02/10] block: Emulate AIO functions with bdrv_co_readv/writev Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 03/10] block: Add bdrv_co_readv/writev emulation Kevin Wolf
2011-08-02 12:12   ` Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 04/10] coroutines: Locks Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 05/10] qcow2: Use coroutines Kevin Wolf
2011-07-29 13:20   ` Stefan Hajnoczi
2011-07-26 11:49 ` [Qemu-devel] [PATCH 06/10] qcow: " Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 07/10] async: Remove AsyncContext Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 08/10] coroutines: Use one global bottom half for CoQueue Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 09/10] posix-aio-compat: Allow read after EOF Kevin Wolf
2011-07-26 13:55   ` Frediano Ziglio
2011-07-26 14:22     ` Kevin Wolf
2011-07-26 11:49 ` [Qemu-devel] [PATCH 10/10] block: Use bdrv_co_* instead of synchronous versions in coroutines Kevin Wolf
2011-08-02 13:56   ` [Qemu-devel] [PATCH v2 " Kevin Wolf
2011-08-01  9:59 ` [Qemu-devel] [PATCH 00/10] block: Coroutine support Stefan Hajnoczi
2011-08-02 14:23 ` Avi Kivity
2011-08-02 14:50   ` Kevin Wolf
2011-08-02 14:55     ` Frediano Ziglio
2011-08-02 15:14       ` Kevin Wolf
2011-08-02 14:58     ` Anthony Liguori
2011-08-02 14:59     ` Avi Kivity

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).