qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Max Reitz <mreitz@redhat.com>
To: qemu-block@nongnu.org
Cc: qemu-devel@nongnu.org, Eric Blake <eblake@redhat.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Kevin Wolf <kwolf@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v4 00/16] block: Preallocated truncate
Date: Sun, 9 Jul 2017 22:16:20 +0200	[thread overview]
Message-ID: <56ecd1e3-8efb-c810-37d4-36c4b68b8ac0@redhat.com> (raw)
In-Reply-To: <20170613202107.10125-1-mreitz@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 5298 bytes --]

On 2017-06-13 22:20, Max Reitz wrote:
> === Series dependencies ===
> 
> This series depends on v7 of Stefan's series
> "qemu-img: add measure sub-command"
> (http://lists.nongnu.org/archive/html/qemu-devel/2017-06/msg03035.html).
> 
> 
> === Actual cover letter ===
> 
> This series adds preallocation to bdrv_truncate() and subsequently
> qemu-img resize. This is implemented for qcow2 and raw only, just like
> preallocation for newly created images is. There is no runtime interface
> for this new parameter (yet).
> 
> 
> v4:
> - Patch 4:
>   - Note bug fix in commit message [Eric]
>   - "...may result in *slightly* more data being allocated..." [Eric]
> - Patch 11:
>   - Drop the "image may now occupy more space than necessary" note --
>     that's always the case when preallocation failed, and I don't really
>     want to mention it everywhere
>   - Flush metadata after preallocation [Stefan]
> 
> 
> git-backport-diff against v3:
> 
> Key:
> [----] : patches are identical
> [####] : number of functional differences between upstream/downstream patch
> [down] : patch is downstream-only
> The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively
> 
> 001/16:[----] [--] 'block: Add PreallocMode to BD.bdrv_truncate()'
> 002/16:[----] [--] 'block: Add PreallocMode to bdrv_truncate()'
> 003/16:[----] [--] 'block: Add PreallocMode to blk_truncate()'
> 004/16:[0002] [FC] 'qemu-img: Expose PreallocMode for resizing'
> 005/16:[----] [--] 'block/file-posix: Small fixes in raw_create()'
> 006/16:[----] [--] 'block/file-posix: Extract raw_regular_truncate()'
> 007/16:[----] [--] 'block/file-posix: Generalize raw_regular_truncate'
> 008/16:[----] [--] 'block/file-posix: Preallocation for truncate'
> 009/16:[----] [--] 'block/qcow2: Generalize preallocate()'
> 010/16:[----] [--] 'block/qcow2: Lock s->lock in preallocate()'
> 011/16:[0013] [FC] 'block/qcow2: Metadata preallocation for truncate'
> 012/16:[----] [--] 'block/qcow2: Add qcow2_refcount_area()'
> 013/16:[----] [--] 'block/qcow2: Rename "fail_block" to just "fail"'
> 014/16:[----] [--] 'block/qcow2: falloc/full preallocating growth'
> 015/16:[----] [--] 'iotests: Add preallocated resize test for raw'
> 016/16:[----] [--] 'iotests: Add preallocated growth test for qcow2'
> 
> 
> Max Reitz (16):
>   block: Add PreallocMode to BD.bdrv_truncate()
>   block: Add PreallocMode to bdrv_truncate()
>   block: Add PreallocMode to blk_truncate()
>   qemu-img: Expose PreallocMode for resizing
>   block/file-posix: Small fixes in raw_create()
>   block/file-posix: Extract raw_regular_truncate()
>   block/file-posix: Generalize raw_regular_truncate
>   block/file-posix: Preallocation for truncate
>   block/qcow2: Generalize preallocate()
>   block/qcow2: Lock s->lock in preallocate()
>   block/qcow2: Metadata preallocation for truncate
>   block/qcow2: Add qcow2_refcount_area()
>   block/qcow2: Rename "fail_block" to just "fail"
>   block/qcow2: falloc/full preallocating growth
>   iotests: Add preallocated resize test for raw
>   iotests: Add preallocated growth test for qcow2
> 
>  block/qcow2.h                  |   9 +
>  include/block/block.h          |   3 +-
>  include/block/block_int.h      |   3 +-
>  include/sysemu/block-backend.h |   3 +-
>  block.c                        |   5 +-
>  block/blkdebug.c               |   5 +-
>  block/block-backend.c          |   5 +-
>  block/commit.c                 |   4 +-
>  block/crypto.c                 |   4 +-
>  block/file-posix.c             | 201 +++++++++++++--------
>  block/file-win32.c             |   9 +-
>  block/gluster.c                |   8 +-
>  block/iscsi.c                  |   9 +-
>  block/mirror.c                 |   3 +-
>  block/nfs.c                    |   9 +-
>  block/parallels.c              |  13 +-
>  block/qcow.c                   |   8 +-
>  block/qcow2-refcount.c         | 277 +++++++++++++++++++----------
>  block/qcow2.c                  | 205 +++++++++++++++++++---
>  block/qed.c                    |  11 +-
>  block/raw-format.c             |   5 +-
>  block/rbd.c                    |   9 +-
>  block/sheepdog.c               |  11 +-
>  block/vdi.c                    |   3 +-
>  block/vhdx-log.c               |   2 +-
>  block/vhdx.c                   |   8 +-
>  block/vmdk.c                   |   7 +-
>  block/vpc.c                    |   2 +-
>  blockdev.c                     |   2 +-
>  qemu-img.c                     |  33 +++-
>  qemu-io-cmds.c                 |   2 +-
>  qemu-img.texi                  |   7 +-
>  tests/qemu-iotests/044.out     |   2 +-
>  tests/qemu-iotests/106         |  92 ++++++++++
>  tests/qemu-iotests/106.out     |  50 ++++++
>  tests/qemu-iotests/125         | 130 ++++++++++++++
>  tests/qemu-iotests/125.out     | 386 +++++++++++++++++++++++++++++++++++++++++
>  tests/qemu-iotests/group       |   2 +
>  38 files changed, 1313 insertions(+), 234 deletions(-)
>  create mode 100755 tests/qemu-iotests/106
>  create mode 100644 tests/qemu-iotests/106.out
>  create mode 100755 tests/qemu-iotests/125
>  create mode 100644 tests/qemu-iotests/125.out

Applied to my block tree:

https://github.com/XanClic/qemu/commits/block

Max


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 498 bytes --]

      parent reply	other threads:[~2017-07-09 20:16 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-13 20:20 [Qemu-devel] [PATCH v4 00/16] block: Preallocated truncate Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 01/16] block: Add PreallocMode to BD.bdrv_truncate() Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 02/16] block: Add PreallocMode to bdrv_truncate() Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 03/16] block: Add PreallocMode to blk_truncate() Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 04/16] qemu-img: Expose PreallocMode for resizing Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 05/16] block/file-posix: Small fixes in raw_create() Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 06/16] block/file-posix: Extract raw_regular_truncate() Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 07/16] block/file-posix: Generalize raw_regular_truncate Max Reitz
2017-06-13 20:20 ` [Qemu-devel] [PATCH v4 08/16] block/file-posix: Preallocation for truncate Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 09/16] block/qcow2: Generalize preallocate() Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 10/16] block/qcow2: Lock s->lock in preallocate() Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 11/16] block/qcow2: Metadata preallocation for truncate Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 12/16] block/qcow2: Add qcow2_refcount_area() Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 13/16] block/qcow2: Rename "fail_block" to just "fail" Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 14/16] block/qcow2: falloc/full preallocating growth Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 15/16] iotests: Add preallocated resize test for raw Max Reitz
2017-06-13 20:21 ` [Qemu-devel] [PATCH v4 16/16] iotests: Add preallocated growth test for qcow2 Max Reitz
2017-06-19 15:02 ` [Qemu-devel] [PATCH v4 00/16] block: Preallocated truncate Stefan Hajnoczi
2017-07-09 20:16 ` Max Reitz [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=56ecd1e3-8efb-c810-37d4-36c4b68b8ac0@redhat.com \
    --to=mreitz@redhat.com \
    --cc=eblake@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-block@nongnu.org \
    --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).