qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/9] quorum: Implement .bdrv_co_preadv/pwritev()
@ 2016-11-22 12:23 Kevin Wolf
  2016-11-22 12:23 ` [Qemu-devel] [PATCH v2 1/9] coroutine: Introduce qemu_coroutine_enter_if_inactive() Kevin Wolf
                   ` (8 more replies)
  0 siblings, 9 replies; 18+ messages in thread
From: Kevin Wolf @ 2016-11-22 12:23 UTC (permalink / raw)
  To: qemu-block; +Cc: kwolf, berto, eblake, mreitz, qemu-devel

This is part of my work that aims to remove the bdrv_aio_*() emulation in io.c.

After the series, quorum doesn't only use the preferred interfaces, but the
code becomes a little easier to follow and byte granularity requests are
supported. There is probably still some potential for additional cleanups in a
follow-up series, but this should already be enough to be worth merging.

v2:
- Patch 7: Change rounding in one more place [Eric]
- Patch 9: Additional cleanup [Eric]

v1 (from RFC):
- Patch 1: Removed useless #include [Eric]
- Patch 3:
  * Define QuorumCo at the top so that a later patch doesn't
    have to move it [Eric]
  * Renamed QuorumCo.i to QuorumCo.idx [Berto]
  * Removed useless co = NULL [Eric]
- Patch 5/6: Reenter caller coroutine only after the last request [Berto]
- Patch 6: Replace void cast by comment [Berto]
- Patch 7: Change rounding [Eric/Berto]

Kevin Wolf (9):
  coroutine: Introduce qemu_coroutine_enter_if_inactive()
  quorum: Remove s from quorum_aio_get() arguments
  quorum: Implement .bdrv_co_readv/writev
  quorum: Do cleanup in caller coroutine
  quorum: Inline quorum_aio_cb()
  quorum: Avoid bdrv_aio_writev() for rewrites
  quorum: Implement .bdrv_co_preadv/pwritev()
  quorum: Inline quorum_fifo_aio_cb()
  quorum: Clean up quorum_aio_get()

 block/quorum.c           | 404 +++++++++++++++++++++++++----------------------
 include/qemu/coroutine.h |   6 +
 util/qemu-coroutine.c    |   7 +
 3 files changed, 229 insertions(+), 188 deletions(-)

-- 
1.8.3.1

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

end of thread, other threads:[~2016-11-29 19:07 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-22 12:23 [Qemu-devel] [PATCH v2 0/9] quorum: Implement .bdrv_co_preadv/pwritev() Kevin Wolf
2016-11-22 12:23 ` [Qemu-devel] [PATCH v2 1/9] coroutine: Introduce qemu_coroutine_enter_if_inactive() Kevin Wolf
2016-11-22 12:23 ` [Qemu-devel] [PATCH v2 2/9] quorum: Remove s from quorum_aio_get() arguments Kevin Wolf
2016-11-22 12:23 ` [Qemu-devel] [PATCH v2 3/9] quorum: Implement .bdrv_co_readv/writev Kevin Wolf
2016-11-22 12:23 ` [Qemu-devel] [PATCH v2 4/9] quorum: Do cleanup in caller coroutine Kevin Wolf
2016-11-22 12:24 ` [Qemu-devel] [PATCH v2 5/9] quorum: Inline quorum_aio_cb() Kevin Wolf
2016-11-29  9:39   ` Paolo Bonzini
2016-11-29 10:06     ` Alberto Garcia
2016-11-29 13:38       ` Kevin Wolf
2016-11-22 12:24 ` [Qemu-devel] [PATCH v2 6/9] quorum: Avoid bdrv_aio_writev() for rewrites Kevin Wolf
2016-11-22 12:24 ` [Qemu-devel] [PATCH v2 7/9] quorum: Implement .bdrv_co_preadv/pwritev() Kevin Wolf
2016-11-22 12:52   ` Eric Blake
2016-11-22 13:18   ` Alberto Garcia
2016-11-22 12:24 ` [Qemu-devel] [PATCH v2 8/9] quorum: Inline quorum_fifo_aio_cb() Kevin Wolf
2016-11-29  9:41   ` Paolo Bonzini
2016-11-22 12:24 ` [Qemu-devel] [PATCH v2 9/9] quorum: Clean up quorum_aio_get() Kevin Wolf
2016-11-22 12:54   ` Eric Blake
2016-11-22 13:25   ` Alberto Garcia

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