qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCHv5 0/3] block: optimize zero writes with bdrv_write_zeroes
@ 2014-05-17 22:58 Peter Lieven
  2014-05-17 22:58 ` [Qemu-devel] [PATCHv5 1/3] util: add qemu_iovec_is_zero Peter Lieven
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Peter Lieven @ 2014-05-17 22:58 UTC (permalink / raw)
  To: qemu-devel; +Cc: kwolf, famz, Peter Lieven, stefanha, pbonzini

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

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

end of thread, other threads:[~2014-05-19 10:25 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-17 22:58 [Qemu-devel] [PATCHv5 0/3] block: optimize zero writes with bdrv_write_zeroes Peter Lieven
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

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