From: Kevin Wolf <kwolf@redhat.com>
To: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 0/5] block: remove unused emulation and synchronous functions
Date: Fri, 14 Oct 2011 11:55:40 +0200 [thread overview]
Message-ID: <4E98071C.5050406@redhat.com> (raw)
In-Reply-To: <1318536572-23771-1-git-send-email-stefanha@linux.vnet.ibm.com>
Am 13.10.2011 22:09, schrieb Stefan Hajnoczi:
> Now that the block layer processes requests in coroutine context, some of the
> emulation wrappers and duplicate code paths can be dropped. Paraphrasing a
> wise man, Arnold Schwarzenegger, "I will go to the block layer and I will clean
> house" :).
>
> They key thing behind this series is that the block layer processes requests in
> coroutine context and will try to use .brdv_co_readv()/.bdrv_co_writev() when
> possible. Should the BlockDriver not implement those interfaces, an emulation
> function will be used to provide them using aio. If the BlockDriver does not
> implement aio interfaces, then an emulation function will be used to provide
> them using synchronous I/O.
>
> This means:
>
> 1. A BlockDriver that implements coroutine interfaces does not need to
> implement aio or synchronous interfaces.
>
> 2. A BlockDriver that implements aio interfaces does not need to implement
> synchronous interfaces.
>
> 3. Coroutine interfaces are preferred and do not require any emulation
> functions.
>
> This patch series propagates these rules across existing BlockDrivers and
> removes unused emulation functions from block.c.
>
> Stefan Hajnoczi (5):
> block: drop emulation functions that use coroutines
> raw-posix: remove bdrv_read()/bdrv_write()
> block: use coroutine interface for raw format
> block: drop .bdrv_read()/.bdrv_write() emulation
> block: drop bdrv_has_async_rw()
Thanks, applied all to the block branch.
> block.c | 142 ++-------------------------
> block/raw-posix.c | 277 -----------------------------------------------------
> block/raw.c | 32 ++-----
> 3 files changed, 18 insertions(+), 433 deletions(-)
Awesome. We need more series like this! :-)
Kevin
prev parent reply other threads:[~2011-10-14 9:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-13 20:09 [Qemu-devel] [PATCH 0/5] block: remove unused emulation and synchronous functions Stefan Hajnoczi
2011-10-13 20:09 ` [Qemu-devel] [PATCH 1/5] block: drop emulation functions that use coroutines Stefan Hajnoczi
2011-10-13 20:09 ` [Qemu-devel] [PATCH 2/5] raw-posix: remove bdrv_read()/bdrv_write() Stefan Hajnoczi
2011-10-13 20:09 ` [Qemu-devel] [PATCH 3/5] block: use coroutine interface for raw format Stefan Hajnoczi
2011-10-13 20:09 ` [Qemu-devel] [PATCH 4/5] block: drop .bdrv_read()/.bdrv_write() emulation Stefan Hajnoczi
2011-10-13 20:09 ` [Qemu-devel] [PATCH 5/5] block: drop bdrv_has_async_rw() Stefan Hajnoczi
2011-10-14 9:55 ` Kevin Wolf [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E98071C.5050406@redhat.com \
--to=kwolf@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.