From: Peter Lieven <pl@kamp.de>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com, famz@redhat.com, Peter Lieven <pl@kamp.de>,
stefanha@redhat.com, pbonzini@redhat.com
Subject: [Qemu-devel] [PATCHv5 0/3] block: optimize zero writes with bdrv_write_zeroes
Date: Sun, 18 May 2014 00:58:16 +0200 [thread overview]
Message-ID: <1400367499-12465-1-git-send-email-pl@kamp.de> (raw)
this series tries to optimize zero write requests
by automatically using bdrv_write_zeroes if it is
supported by the format. More details can be found
in the commit message to patch 3.
Changes:
v4->v5: - split patch into 3 separate patches [Kevin, Eric]
- use QEMU_ALIGN_DOWN in qemu_iovec_is_zero [Kevin]
- remove check for bs->file from the
"pretty long condition" [Kevin]
- added possible values for discard-zeroes to QemuOptsList [Eric]
- fail if detect-zeroes = unmap is choosen without discard = unmap [Kevin]
- show detect-zeroes mode always in hmp if enabled [Kevin]
v3->v4: - use QAPI generated enum and lookup table [Kevin]
- added more details about the options in the comments
of the qapi-schema [Eric]
- changed the type of detect_zeroes from str to
BlockdevDetectZeroesOptions. I left the name
as is because it is consistent with e.g.
BlockdevDiscardOptions or BlockdevAioOptions [Eric]
- changed the parse function in blockdev_init to
be generic usable for other enum parameters
v2->v3: - moved parameter parsing to blockdev_init
- added per device detect_zeroes status to
hmp (info block -v) and qmp (query-block) [Eric]
- added support to enable detect-zeroes also
for hot added devices [Eric]
- added missing entry to qemu_common_drive_opts
- fixed description of qemu_iovec_is_zero [Fam]
v1->v2: - added tests to commit message (Markus)
RFCv2->v1: - fixed paramter parsing strncmp -> strcmp (Eric)
- fixed typo (choosen->chosen) (Eric)
- added second example to commit msg
RFCv1->RFCv2: - add detect-zeroes=off|on|unmap knob to drive cmdline parameter
- call zero detection only for format (bs->file != NULL)
Peter Lieven (3):
util: add qemu_iovec_is_zero
blockdev: add a function to parse enum ids from strings
block: optimize zero writes with bdrv_write_zeroes
block.c | 9 ++++++++
block/qapi.c | 1 +
blockdev.c | 41 +++++++++++++++++++++++++++++++++++
hmp.c | 5 +++++
include/block/block_int.h | 1 +
include/qemu-common.h | 1 +
qapi-schema.json | 52 ++++++++++++++++++++++++++++++++-------------
qemu-options.hx | 6 ++++++
qmp-commands.hx | 3 +++
util/iov.c | 21 ++++++++++++++++++
10 files changed, 125 insertions(+), 15 deletions(-)
--
1.7.9.5
next reply other threads:[~2014-05-17 22:59 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-17 22:58 Peter Lieven [this message]
2014-05-17 22:58 ` [Qemu-devel] [PATCHv5 1/3] util: add qemu_iovec_is_zero Peter Lieven
2014-05-17 22:58 ` [Qemu-devel] [PATCHv5 2/3] blockdev: add a function to parse enum ids from strings Peter Lieven
2014-05-17 22:58 ` [Qemu-devel] [PATCHv5 3/3] block: optimize zero writes with bdrv_write_zeroes Peter Lieven
2014-05-19 10:25 ` [Qemu-devel] [PATCHv5 0/3] " Kevin Wolf
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=1400367499-12465-1-git-send-email-pl@kamp.de \
--to=pl@kamp.de \
--cc=famz@redhat.com \
--cc=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.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 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).