qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] ffa41a: iotests/109: Don't mirror with mismat


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] ffa41a: iotests/109: Don't mirror with mismatched size
Date: Tue, 19 May 2020 05:15:31 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: ffa41a62d0b0e6d91f2071328befa046d56993e1
      
https://github.com/qemu/qemu/commit/ffa41a62d0b0e6d91f2071328befa046d56993e1
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M tests/qemu-iotests/109
    M tests/qemu-iotests/109.out
    M tests/qemu-iotests/common.filter

  Log Message:
  -----------
  iotests/109: Don't mirror with mismatched size

This patch makes the raw image the same size as the file in a different
format that is mirrored as raw to it to avoid errors when mirror starts
to enforce that source and target are the same size.

We check only that the first 512 bytes are zeroed (instead of 64k)
because some image formats create image files that are smaller than 64k,
so trying to read 64k would result in I/O errors. Apart from this, 512
is more appropriate anyway because the raw format driver protects
specifically the first 512 bytes.

Signed-off-by: Kevin Wolf <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: d89ac3cf305b28c024a76805a84d75c0ee1e786f
      
https://github.com/qemu/qemu/commit/d89ac3cf305b28c024a76805a84d75c0ee1e786f
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M tests/qemu-iotests/229
    M tests/qemu-iotests/229.out

  Log Message:
  -----------
  iotests/229: Use blkdebug to inject an error

229 relies on the mirror running into an I/O error when the target is
smaller than the source. After changing mirror to catch this condition
while starting the job, this test case won't get a job that is paused
for an I/O error any more. Use blkdebug instead to inject an error.

Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: e83dd6808c6e0975970f37b49b27cc37bb54eea8
      
https://github.com/qemu/qemu/commit/e83dd6808c6e0975970f37b49b27cc37bb54eea8
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/mirror.c

  Log Message:
  -----------
  mirror: Make sure that source and target size match

If the target is shorter than the source, mirror would copy data until
it reaches the end of the target and then fail with an I/O error when
trying to write past the end.

If the target is longer than the source, the mirror job would complete
successfully, but the target wouldn't actually be an accurate copy of
the source image (it would contain some additional garbage at the end).

Fix this by checking that both images have the same size when the job
starts.

Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 16cea4ee1c8e5a69a058e76f426b2e17974d8d7d
      
https://github.com/qemu/qemu/commit/16cea4ee1c8e5a69a058e76f426b2e17974d8d7d
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M tests/qemu-iotests/041
    M tests/qemu-iotests/041.out

  Log Message:
  -----------
  iotests: Mirror with different source/target size

This tests that the mirror job catches situations where the target node
has a different size than the source node. It must also forbid resize
operations when the job is already running.

Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: e140f4b7b8c0fdda866ba3d8b4aa184b6ba6d6b8
      
https://github.com/qemu/qemu/commit/e140f4b7b8c0fdda866ba3d8b4aa184b6ba6d6b8
  Author: Lukas Straub <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/replication.c

  Log Message:
  -----------
  block/replication.c: Avoid cancelling the job twice

If qemu in colo secondary mode is stopped, it crashes because
s->backup_job is canceled twice: First with job_cancel_sync_all()
in qemu_cleanup() and then in replication_stop().

Fix this by assigning NULL to s->backup_job when the job completes
so replication_stop() and replication_do_checkpoint() won't touch
the job.

Signed-off-by: Lukas Straub <address@hidden>
Message-Id: <20200511090801.7ed5d8f3@luklap>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: cd8f5b75927afdd8ac2378f4360208e0aa8f58e2
      
https://github.com/qemu/qemu/commit/cd8f5b75927afdd8ac2378f4360208e0aa8f58e2
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M tests/qemu-iotests/iotests.py

  Log Message:
  -----------
  iotests: Fix incomplete type declarations

We need to fix only a few places so that iotests.py can pass
mypy --disallow-incomplete-defs, which seems to be a desirable option to
have enabled in the long run.

Signed-off-by: Kevin Wolf <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Reviewed-by: John Snow <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 19b7868eff865c01985a5d37f1c9c0c8691b0001
      
https://github.com/qemu/qemu/commit/19b7868eff865c01985a5d37f1c9c0c8691b0001
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    A tests/qemu-iotests/297
    A tests/qemu-iotests/297.out
    M tests/qemu-iotests/group

  Log Message:
  -----------
  iotests: Run pylint and mypy in a testcase

We made sure that iotests.py passes pylint. It would be a shame if we
allowed new patches in that break this again, so let's just add a
meta-test case that runs pylint on it.

While we don't pass mypy --strict yet, we can already run it with a few
options that would be part of --strict to make sure that we won't
regress on these aspects at least until we can enable the full thing.

Signed-off-by: Kevin Wolf <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Reviewed-by: John Snow <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 6f7a3b535f0d48d138e43cadf13323f083bfb547
      
https://github.com/qemu/qemu/commit/6f7a3b535f0d48d138e43cadf13323f083bfb547
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block.h

  Log Message:
  -----------
  block: Add bdrv_make_empty()

Right now, all users of bdrv_make_empty() call the BlockDriver method
directly.  That is not only bad style, it is also wrong, unless the
caller has a BdrvChild with a WRITE or WRITE_UNCHANGED permission.
(WRITE_UNCHANGED suffices, because callers generally use this function
to clear a node with a backing file after a commit operation.)

Introduce bdrv_make_empty() that verifies that it does.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 2b7bbdbdefe203cf8468c61b4217e578981d6fce
      
https://github.com/qemu/qemu/commit/2b7bbdbdefe203cf8468c61b4217e578981d6fce
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/block-backend.c
    M include/sysemu/block-backend.h

  Log Message:
  -----------
  block: Add blk_make_empty()

Two callers of BlockDriver.bdrv_make_empty() remain that should not call
this method directly.  Both do not have access to a BdrvChild, but they
can use a BlockBackend, so we add this function that lets them use it.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 2d97fde43991829f74e1e258bb82031605bf9bca
      
https://github.com/qemu/qemu/commit/2d97fde43991829f74e1e258bb82031605bf9bca
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/commit.c
    M qemu-img.c
    M tests/qemu-iotests/098.out

  Log Message:
  -----------
  block: Use blk_make_empty() after commits

bdrv_commit() already has a BlockBackend pointing to the BDS that we
want to empty, it just has the wrong permissions.

qemu-img commit has no BlockBackend pointing to the old backing file
yet, but introducing one is simple.

After this commit, bdrv_make_empty() is the only remaining caller of
BlockDriver.bdrv_make_empty().

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
[kwolf: Fixed up reference output for 098]
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 6ecbc6c52672db5c13805735ca02784879ce8285
      
https://github.com/qemu/qemu/commit/6ecbc6c52672db5c13805735ca02784879ce8285
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/replication.c

  Log Message:
  -----------
  replication: Avoid blk_make_empty() on read-only child

This is just a bandaid to keep tests/test-replication working after
bdrv_make_empty() starts to assert that we're not trying to call it on a
read-only child.

For the real solution in the future, replication should not steal the
BdrvChild from its backing file (this is never correct to do!), but
instead have its own child node references, with the appropriate
permissions.

Signed-off-by: Kevin Wolf <address@hidden>


  Commit: f844ec01b36797e0e5f31f56bfbe49f8c24cc7d4
      
https://github.com/qemu/qemu/commit/f844ec01b36797e0e5f31f56bfbe49f8c24cc7d4
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/replication.c
    M block/vvfat.c

  Log Message:
  -----------
  block: Use bdrv_make_empty() where possible

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Kevin Wolf <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 6540fd153ca9d4cff31b1cc3f5ced271eca9296c
      
https://github.com/qemu/qemu/commit/6540fd153ca9d4cff31b1cc3f5ced271eca9296c
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/blkreplay.c
    M block/commit.c
    M block/mirror.c

  Log Message:
  -----------
  block: Mark commit, mirror, blkreplay as filters

The commit, mirror, and blkreplay block nodes are filters, so they should
be marked as such.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: d67066d8bc01a14f7c9d9b9aeeffb30a10f0e900
      
https://github.com/qemu/qemu/commit/d67066d8bc01a14f7c9d9b9aeeffb30a10f0e900
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/bochs.c
    M block/cloop.c
    M block/crypto.c
    M block/dmg.c
    M block/parallels.c
    M block/qcow.c
    M block/qcow2.c
    M block/qed.c
    M block/raw-format.c
    M block/vdi.c
    M block/vhdx.c
    M block/vmdk.c
    M block/vpc.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Add BlockDriver.is_format

We want to unify child_format and child_file at some point.  One of the
important things that set format drivers apart from other drivers is
that they do not expect other format nodes under them (except in the
backing chain), i.e. we must not probe formats inside of formats.  That
means we need something on which to distinguish format drivers from
others, and hence this flag.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Alberto Garcia <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: bd86fb990cfedc50d9705b8ed31d183f01942035
      
https://github.com/qemu/qemu/commit/bd86fb990cfedc50d9705b8ed31d183f01942035
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/backup-top.c
    M block/blkdebug.c
    M block/blklogwrites.c
    M block/block-backend.c
    M block/commit.c
    M block/copy-on-read.c
    M block/io.c
    M block/mirror.c
    M block/quorum.c
    M block/replication.c
    M block/vvfat.c
    M blockjob.c
    M include/block/block.h
    M include/block/block_int.h
    M tests/test-bdrv-drain.c
    M tests/test-bdrv-graph-mod.c

  Log Message:
  -----------
  block: Rename BdrvChildRole to BdrvChildClass

This structure nearly only contains parent callbacks for child state
changes.  It cannot really reflect a child's role, because different
roles may overlap (as we will see when real roles are introduced), and
because parents can have custom callbacks even when the child fulfills a
standard role.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Alberto Garcia <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 3284bcf430a1d42885c184de73df52fcfd86d589
      
https://github.com/qemu/qemu/commit/3284bcf430a1d42885c184de73df52fcfd86d589
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M include/block/block.h

  Log Message:
  -----------
  block: Add BdrvChildRole and BdrvChildRoleBits

This mask will supplement BdrvChildClass when it comes to what role (or
combination of roles) a child takes for its parent.  It consists of
BdrvChildRoleBits values (which is an enum).

Because empty enums are not allowed, let us just start with it filled.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 258b776515cc812a26783ffab98b31aa8eb008d4
      
https://github.com/qemu/qemu/commit/258b776515cc812a26783ffab98b31aa8eb008d4
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/backup-top.c
    M block/blkdebug.c
    M block/blklogwrites.c
    M block/blkreplay.c
    M block/blkverify.c
    M block/block-backend.c
    M block/bochs.c
    M block/cloop.c
    M block/copy-on-read.c
    M block/crypto.c
    M block/dmg.c
    M block/filter-compress.c
    M block/parallels.c
    M block/qcow.c
    M block/qcow2.c
    M block/qed.c
    M block/quorum.c
    M block/raw-format.c
    M block/replication.c
    M block/throttle.c
    M block/vdi.c
    M block/vhdx.c
    M block/vmdk.c
    M block/vpc.c
    M block/vvfat.c
    M blockjob.c
    M include/block/block.h
    M include/block/block_int.h
    M tests/test-bdrv-drain.c
    M tests/test-bdrv-graph-mod.c

  Log Message:
  -----------
  block: Add BdrvChildRole to BdrvChild

For now, it is always set to 0.  Later patches in this series will
ensure that all callers pass an appropriate combination of flags.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: bf8e925eb569f31466eb5c9d935959a58772eec6
      
https://github.com/qemu/qemu/commit/bf8e925eb569f31466eb5c9d935959a58772eec6
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/backup-top.c
    M block/blkdebug.c
    M block/blklogwrites.c
    M block/commit.c
    M block/copy-on-read.c
    M block/mirror.c
    M block/quorum.c
    M block/replication.c
    M block/vvfat.c
    M include/block/block_int.h
    M tests/test-bdrv-drain.c
    M tests/test-bdrv-graph-mod.c

  Log Message:
  -----------
  block: Pass BdrvChildRole to bdrv_child_perm()

For now, all callers pass 0 and no callee evaluates this value.  Later
patches will change both.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 272c02eaef0388225c1dcdbec99b2e838bb64d23
      
https://github.com/qemu/qemu/commit/272c02eaef0388225c1dcdbec99b2e838bb64d23
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/block-backend.c
    M block/vvfat.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Pass BdrvChildRole to .inherit_options()

For now, all callers (effectively) pass 0 and no callee evaluates thie
value.  Later patches will change both.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 3cdc69d31b49bed603adc973cf06ac898a9b2914
      
https://github.com/qemu/qemu/commit/3cdc69d31b49bed603adc973cf06ac898a9b2914
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/block-backend.c
    M block/vvfat.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Pass parent_is_format to .inherit_options()

We plan to unify the generic .inherit_options() functions.  The
resulting common function will need to decide whether to force-enable
format probing, force-disable it, or leave it as-is.  To make this
decision, it will need to know whether the parent node is a format node
or not (because we never want format probing if the parent is a format
node already (except for the backing chain)).

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: b054ff73547b6e032bde1e98c9a4f8240ce9dd30
      
https://github.com/qemu/qemu/commit/b054ff73547b6e032bde1e98c9a4f8240ce9dd30
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Rename bdrv_inherited_options()

The other two .inherit_options implementations specify exactly for what
case they are used in their name, so do it for this one as well.

(The actual intention behind this patch is to follow it up with a
generic bdrv_inherited_options() that works for all three cases.)

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: fae8bd3904642dd7ff582f4ad4e5e63b0cacbe6f
      
https://github.com/qemu/qemu/commit/fae8bd3904642dd7ff582f4ad4e5e63b0cacbe6f
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Add generic bdrv_inherited_options()

After the series this patch belongs to, we want to have a common
BdrvChildClass that encompasses all of child_file, child_format, and
child_backing.  Such a single class needs a single .inherit_options()
implementation, and this patch introduces it.

The next patch will show how the existing implementations can fall back
to it just by passing appropriate BdrvChildRole and parent_is_format
values.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 00ff7ffd67c50fe45a1e313765d416d082541128
      
https://github.com/qemu/qemu/commit/00ff7ffd67c50fe45a1e313765d416d082541128
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Use bdrv_inherited_options()

Let child_file's, child_format's, and child_backing's .inherit_options()
implementations fall back to bdrv_inherited_options() to show that it
would really work for all of these cases, if only the parents passed the
appropriate BdrvChildRole and parent_is_format values.

(Also, make bdrv_open_inherit(), the only place to explicitly call
bdrv_backing_options(), call bdrv_inherited_options() instead.)

This patch should incur only two visible changes, both for child_format
children, both of which are effectively bug fixes:

First, they no longer have discard=unmap set by default.  This reason it
was set is because bdrv_inherited_fmt_options() fell through to
bdrv_protocol_options(), and that set it because "format drivers take
care to send flushes and respect unmap policy".  None of the drivers
that use child_format for their children (quorum and blkverify) are
format drivers, though, so this reasoning does not apply here.

Second, they no longer have BDRV_O_NO_IO force-cleared.  child_format
was used solely for children that do not store any metadata and as such
will not be accessed by their parents as long as those parents do not
receive I/O themselves.  Thus, such children should inherit
BDRV_O_NO_IO.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: ca2f1234c3c051f416fb0a1d09eecde328a6dd51
      
https://github.com/qemu/qemu/commit/ca2f1234c3c051f416fb0a1d09eecde328a6dd51
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Unify bdrv_child_cb_attach()

Make bdrv_child_cb_attach() call bdrv_backing_attach() for children with
a COW role (and drop the reverse call from bdrv_backing_attach()), so it
can be used for any child (with a proper role set).

Because so far no child has a proper role set, we need a temporary new
callback for child_backing.attach that ensures bdrv_backing_attach() is
called for all COW children that do not have their role set yet.

(Also, move bdrv_child_cb_attach() down to group it with
bdrv_inherited_options().)

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 48e082886132f49e883d96ce39fb926f53868e26
      
https://github.com/qemu/qemu/commit/48e082886132f49e883d96ce39fb926f53868e26
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Unify bdrv_child_cb_detach()

Make bdrv_child_cb_detach() call bdrv_backing_detach() for children with
a COW role (and drop the reverse call from bdrv_backing_detach()), so it
can be used for any child (with a proper role set).

Because so far no child has a proper role set, we need a temporary new
callback for child_backing.detach that ensures bdrv_backing_detach() is
called for all COW children that do not have their role set yet.

(Also, move bdrv_child_cb_detach() down to group it with
bdrv_inherited_options() and bdrv_child_cb_attach().)

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 4348355032c027d0029994fc62da395e68afb60d
      
https://github.com/qemu/qemu/commit/4348355032c027d0029994fc62da395e68afb60d
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Add child_of_bds

Any current user of child_file, child_format, and child_backing can and
should use this generic BdrvChildClass instead, as it can handle all of
these cases.  However, to be able to do so, the users must pass the
appropriate BdrvChildRole when the child is created/attached.  (The
following commits will take care of that.)

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 33f2663bd58696ab836731830f9fb6a878a5b944
      
https://github.com/qemu/qemu/commit/33f2663bd58696ab836731830f9fb6a878a5b944
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Distinguish paths in *_format_default_perms

bdrv_format_default_perms() has one code path for backing files, and one
for storage files.  We want to pull them out into their own functions,
so make sure they are completely distinct before so the next patches
will be a bit cleaner.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 70082db4efab1bc91467a9207c6e3f554a8e6bac
      
https://github.com/qemu/qemu/commit/70082db4efab1bc91467a9207c6e3f554a8e6bac
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Pull out bdrv_default_perms_for_cow()

Right now, bdrv_format_default_perms() is used by format parents
(generally). We want to switch to a model where most parents use a
single BdrvChildClass, which then decides the permissions based on the
child role. To do so, we have to split bdrv_format_default_perms() into
separate functions for each such role.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 6f838a4b73d9c85e498f94c28109dde0efc1cb9d
      
https://github.com/qemu/qemu/commit/6f838a4b73d9c85e498f94c28109dde0efc1cb9d
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Pull out bdrv_default_perms_for_storage()

Right now, bdrv_format_default_perms() is used by format parents
(generally). We want to switch to a model where most parents use a
single BdrvChildClass, which then decides the permissions based on the
child role. To do so, we have to split bdrv_format_default_perms() into
separate functions for each such role.

Note that bdrv_default_perms_for_storage() currently handles all DATA |
METADATA children.  A follow-up patch is going to split it further into
one function for each case.

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: f889054f031f2f01ae97bdc7579fbdf3a30e4e0e
      
https://github.com/qemu/qemu/commit/f889054f031f2f01ae97bdc7579fbdf3a30e4e0e
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Relax *perms_for_storage for data children

We can be less restrictive about pure data children than those with
metadata on them, so let bdrv_default_perms_for_storage() handle
metadata children differently from pure data children.

As explained in the code, the restrictions on metadata children are
strictly stricter than those for pure data children, so in theory we
just have to distinguish between pure-data and all other storage
children (pure metadata or data+metadata).  In practice, that is not
obvious, though, so we have two independent code paths for metadata and
for data children, and data+metadata children will go through both
(without the path for data children doing anything meaningful).

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 2519f54919a9c3e0696e2fac7d564e15722618c4
      
https://github.com/qemu/qemu/commit/2519f54919a9c3e0696e2fac7d564e15722618c4
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Add bdrv_default_perms()

This callback can be used by BDSs that use child_of_bds with the
appropriate BdrvChildRole for their children.

Also, make bdrv_format_default_perms() use it for child_of_bds children
(just a temporary solution until we can drop bdrv_format_default_perms()
altogether).

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 500e2434207dd3cff4f88e6d6c7b0b7b9c1a2caf
      
https://github.com/qemu/qemu/commit/500e2434207dd3cff4f88e6d6c7b0b7b9c1a2caf
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/raw-format.c

  Log Message:
  -----------
  raw-format: Split raw_read_options()

Split raw_read_options() into one function that actually just reads the
options, and another that applies them.  This will allow us to detect
whether the user has specified any options before attaching the file
child (so we can decide on its role based on the options).

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 36ee58d13bbcb75c72385bee6e262afed3acce47
      
https://github.com/qemu/qemu/commit/36ee58d13bbcb75c72385bee6e262afed3acce47
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/blkverify.c
    M block/quorum.c

  Log Message:
  -----------
  block: Switch child_format users to child_of_bds

Both users (quorum and blkverify) use child_format for
not-really-filtered children, so the appropriate BdrvChildRole in both
cases is DATA.  (Note that this will cause bdrv_inherited_options() to
force-allow format probing.)

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: f34ade114818c5a011a743ebd899c91b9ebbe040
      
https://github.com/qemu/qemu/commit/f34ade114818c5a011a743ebd899c91b9ebbe040
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Drop child_format

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 25191e5ff0804bbd3b9e9dd86fb538c06710cee2
      
https://github.com/qemu/qemu/commit/25191e5ff0804bbd3b9e9dd86fb538c06710cee2
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/backup-top.c
    M block/vvfat.c
    M tests/test-bdrv-drain.c

  Log Message:
  -----------
  block: Make backing files child_of_bds children

Make all parents of backing files pass the appropriate BdrvChildRole.
By doing so, we can switch their BdrvChildClass over to the generic
child_of_bds, which will do the right thing when given a correct
BdrvChildRole.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: ff3541c4e27030fe681d0613ef69bdffb0e29f3a
      
https://github.com/qemu/qemu/commit/ff3541c4e27030fe681d0613ef69bdffb0e29f3a
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Drop child_backing

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 8b1869daad17f313bf9a68fd3275448df0ecb7fb
      
https://github.com/qemu/qemu/commit/8b1869daad17f313bf9a68fd3275448df0ecb7fb
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/bochs.c
    M block/cloop.c
    M block/crypto.c
    M block/dmg.c
    M block/parallels.c
    M block/qcow.c
    M block/qcow2.c
    M block/qed.c
    M block/vdi.c
    M block/vhdx.c
    M block/vmdk.c
    M block/vpc.c

  Log Message:
  -----------
  block: Make format drivers use child_of_bds

Commonly, they need to pass the BDRV_CHILD_IMAGE set as the
BdrvChildRole; but there are exceptions for drivers with external data
files (qcow2 and vmdk).

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: b3af2af43b2bf85191cf40fa84b33df1268a08fd
      
https://github.com/qemu/qemu/commit/b3af2af43b2bf85191cf40fa84b33df1268a08fd
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/blkdebug.c
    M block/blklogwrites.c
    M block/blkreplay.c
    M block/blkverify.c
    M block/copy-on-read.c
    M block/filter-compress.c
    M block/replication.c
    M block/throttle.c

  Log Message:
  -----------
  block: Make filter drivers use child_of_bds

Note that some filters have secondary children, namely blkverify (the
image to be verified) and blklogwrites (the log).  This patch does not
touch those children.

Note that for blkverify, the filtered child should not be format-probed.
While there is nothing enforcing this here, in practice, it will not be:
blkverify implements .bdrv_file_open.  The block layer ensures (and in
fact, asserts) that BDRV_O_PROTOCOL is set for every BDS whose driver
implements .bdrv_file_open.  This flag will then be bequeathed to
blkverify's children, and they will thus (by default) not be probed
either.

("By default" refers to the fact that blkverify's other child (the
non-filtered one) will have BDRV_O_PROTOCOL force-unset, because that is
what happens for all non-filtered children of non-format drivers.)

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 58944401d661f22fef15af5a0270ef808a1f4791
      
https://github.com/qemu/qemu/commit/58944401d661f22fef15af5a0270ef808a1f4791
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/backup-top.c
    M block/blklogwrites.c
    M block/raw-format.c

  Log Message:
  -----------
  block: Use child_of_bds in remaining places

Replace child_file by child_of_bds in all remaining places (excluding
tests).

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: a16be3cdfce2379b5fb0a17a3017a6c59d73388d
      
https://github.com/qemu/qemu/commit/a16be3cdfce2379b5fb0a17a3017a6c59d73388d
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M tests/test-bdrv-drain.c
    M tests/test-bdrv-graph-mod.c

  Log Message:
  -----------
  tests: Use child_of_bds instead of child_file

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 69dca43d6b6819b3d0895364692e2d0445674916
      
https://github.com/qemu/qemu/commit/69dca43d6b6819b3d0895364692e2d0445674916
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/backup-top.c
    M block/blkdebug.c
    M block/blklogwrites.c
    M block/blkreplay.c
    M block/blkverify.c
    M block/bochs.c
    M block/cloop.c
    M block/crypto.c
    M block/dmg.c
    M block/filter-compress.c
    M block/parallels.c
    M block/qcow.c
    M block/qcow2.c
    M block/qed.c
    M block/raw-format.c
    M block/throttle.c
    M block/vdi.c
    M block/vhdx.c
    M block/vmdk.c
    M block/vpc.c
    M tests/test-bdrv-drain.c
    M tests/test-bdrv-graph-mod.c
    M tests/test-block-iothread.c

  Log Message:
  -----------
  block: Use bdrv_default_perms()

bdrv_default_perms() can decide which permission profile to use based on
the BdrvChildRole, so block drivers do not need to select it explicitly.

The blkverify driver now no longer shares the WRITE permission for the
image to verify.  We thus have to adjust two places in
test-block-iothread not to take it.  (Note that in theory, blkverify
should behave like quorum in this regard and share neither WRITE nor
RESIZE for both of its children.  In practice, it does not really
matter, because blkverify is used only for debugging, so we might as
well keep its permissions rather liberal.)

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 87278af1d9bac404e1c64ee2b652193a4c2628a6
      
https://github.com/qemu/qemu/commit/87278af1d9bac404e1c64ee2b652193a4c2628a6
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Make bdrv_filter_default_perms() static

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 9aab945e9cad484d668dbd26b023261223a4b02f
      
https://github.com/qemu/qemu/commit/9aab945e9cad484d668dbd26b023261223a4b02f
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block_int.h

  Log Message:
  -----------
  block: Drop bdrv_format_default_perms()

Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: f6de853fa3d76b4b92032dc6cdc06bedacbf9466
      
https://github.com/qemu/qemu/commit/f6de853fa3d76b4b92032dc6cdc06bedacbf9466
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M include/block/block_int.h
    M tests/test-bdrv-drain.c

  Log Message:
  -----------
  block: Drop child_file

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 1f38f04eacd4c3b9409dcb411525f203cce168a1
      
https://github.com/qemu/qemu/commit/1f38f04eacd4c3b9409dcb411525f203cce168a1
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/block-backend.c
    M block/vvfat.c

  Log Message:
  -----------
  block: Pass BdrvChildRole in remaining cases

These calls have no real use for the child role yet, but it will not
harm to give one.

Notably, the bdrv_root_attach_child() call in blockjob.c is left
unmodified because there is not much the generic BlockJob object wants
from its children.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: e5d8a4068526d3fb692e3402485edd03bc11c084
      
https://github.com/qemu/qemu/commit/e5d8a4068526d3fb692e3402485edd03bc11c084
  Author: Max Reitz <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block.c
    M block/backup-top.c
    M block/blkdebug.c
    M block/blklogwrites.c
    M block/commit.c
    M block/copy-on-read.c
    M block/mirror.c
    M block/quorum.c
    M block/replication.c
    M block/vvfat.c
    M include/block/block_int.h
    M tests/test-bdrv-drain.c
    M tests/test-bdrv-graph-mod.c

  Log Message:
  -----------
  block: Drop @child_class from bdrv_child_perm()

Implementations should decide the necessary permissions based on @role.

Signed-off-by: Max Reitz <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: c78dd00e3529f923280e2ab51e60dfcdad2c6094
      
https://github.com/qemu/qemu/commit/c78dd00e3529f923280e2ab51e60dfcdad2c6094
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/block-copy.c

  Log Message:
  -----------
  block/block-copy: Fix uninitialized variable in block_copy_task_entry

Fix when building with -Os:

    CC      block/block-copy.o
  block/block-copy.c: In function ‘block_copy_task_entry’:
  block/block-copy.c:428:38: error: ‘error_is_read’ may be used uninitialized 
in this function [-Werror=maybe-uninitialized]
    428 |         t->call_state->error_is_read = error_is_read;
        |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: d7eca542228bf3ca03c615c46ea2253590d57cb7
      
https://github.com/qemu/qemu/commit/d7eca542228bf3ca03c615c46ea2253590d57cb7
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M block/block-copy.c

  Log Message:
  -----------
  block/block-copy: Simplify block_copy_do_copy()

block_copy_do_copy() is static, only used in block_copy_task_entry
with the error_is_read argument set. No need to check for it,
simplify.

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 44a46a9cd9f088e1a9655f2af8cb72ec36dfc731
      
https://github.com/qemu/qemu/commit/44a46a9cd9f088e1a9655f2af8cb72ec36dfc731
  Author: John Snow <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M tests/qemu-iotests/iotests.py

  Log Message:
  -----------
  iotests: log messages from notrun()

Shift the logging initialization up to occur prior to validation checks,
so that notrun() messages still get printed to console.

(Also, remove the "debugging messages active" message, because we don't
need to see that hundreds of times per iotest suite run.)

Signed-off-by: John Snow <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: c5f12a80c6472bc158e5092c731bbc7affaca2e5
      
https://github.com/qemu/qemu/commit/c5f12a80c6472bc158e5092c731bbc7affaca2e5
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M hw/ide/ahci.c

  Log Message:
  -----------
  hw/ide/ahci: Log lost IRQs

One might find interesting to look at AHCI IRQs.

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: John Snow <address@hidden>
Acked-by: John Snow <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: b1b30ff4df942ef75abb3799889ab2f4c52155e9
      
https://github.com/qemu/qemu/commit/b1b30ff4df942ef75abb3799889ab2f4c52155e9
  Author: Kevin Wolf <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M tests/qemu-iotests/030

  Log Message:
  -----------
  iotests/030: Reduce run time by unthrottling job earlier

test_overlapping_3() throttles its active commit job so it can be sure
the job is still busy when it checks that you can't start a conflicting
streaming job.

However, it only sets the commit job back to full speed when it is
ready, which takes a few seconds while it's throttled. We can already
reset the limit after having checked that block-stream returns an error
and save these seconds.

Signed-off-by: Kevin Wolf <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Alberto Garcia <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 4cdd0a774dc35b2ffe6ddb634e0c431f17dfe07e
      
https://github.com/qemu/qemu/commit/4cdd0a774dc35b2ffe6ddb634e0c431f17dfe07e
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2020-05-18 (Mon, 18 May 2020)

  Changed paths:
    M hw/arm/sbsa-ref.c
    M hw/arm/virt.c
    M hw/block/pflash_cfi01.c
    M hw/block/pflash_cfi02.c
    M hw/i386/pc_sysfw.c
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw: Use QEMU_IS_ALIGNED() on parallel flash block size

Use the QEMU_IS_ALIGNED() macro to verify the flash block size
is properly aligned. It is quicker to process when reviewing.

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Alistair Francis <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Acked-by: Paolo Bonzini <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: bffe88d139ad7447e163e732e423cd767e908dc3
      
https://github.com/qemu/qemu/commit/bffe88d139ad7447e163e732e423cd767e908dc3
  Author: Peter Maydell <address@hidden>
  Date:   2020-05-19 (Tue, 19 May 2020)

  Changed paths:
    M block.c
    M block/backup-top.c
    M block/blkdebug.c
    M block/blklogwrites.c
    M block/blkreplay.c
    M block/blkverify.c
    M block/block-backend.c
    M block/block-copy.c
    M block/bochs.c
    M block/cloop.c
    M block/commit.c
    M block/copy-on-read.c
    M block/crypto.c
    M block/dmg.c
    M block/filter-compress.c
    M block/io.c
    M block/mirror.c
    M block/parallels.c
    M block/qcow.c
    M block/qcow2.c
    M block/qed.c
    M block/quorum.c
    M block/raw-format.c
    M block/replication.c
    M block/throttle.c
    M block/vdi.c
    M block/vhdx.c
    M block/vmdk.c
    M block/vpc.c
    M block/vvfat.c
    M blockjob.c
    M hw/arm/sbsa-ref.c
    M hw/arm/virt.c
    M hw/block/pflash_cfi01.c
    M hw/block/pflash_cfi02.c
    M hw/i386/pc_sysfw.c
    M hw/ide/ahci.c
    M hw/riscv/virt.c
    M include/block/block.h
    M include/block/block_int.h
    M include/sysemu/block-backend.h
    M qemu-img.c
    M tests/qemu-iotests/030
    M tests/qemu-iotests/041
    M tests/qemu-iotests/041.out
    M tests/qemu-iotests/098.out
    M tests/qemu-iotests/109
    M tests/qemu-iotests/109.out
    M tests/qemu-iotests/229
    M tests/qemu-iotests/229.out
    A tests/qemu-iotests/297
    A tests/qemu-iotests/297.out
    M tests/qemu-iotests/common.filter
    M tests/qemu-iotests/group
    M tests/qemu-iotests/iotests.py
    M tests/test-bdrv-drain.c
    M tests/test-bdrv-graph-mod.c
    M tests/test-block-iothread.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging

Block layer patches:

- Introduce real BdrvChildRole
- blk/bdrv_make_empty() functions instead of calling callbacks directly
- mirror: Make sure that source and target size match
- block-copy: Fix uninitialized variable
- block/replication: Avoid cancelling the job twice
- ahci: Log lost IRQs
- iotests: Run pylint and mypy in a testcase
- iotests: log messages from notrun()

# gpg: Signature made Mon 18 May 2020 18:05:32 BST
# gpg:                using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6
# gpg:                issuer "address@hidden"
# gpg: Good signature from "Kevin Wolf <address@hidden>" [full]
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6

* remotes/kevin/tags/for-upstream: (52 commits)
  hw: Use QEMU_IS_ALIGNED() on parallel flash block size
  iotests/030: Reduce run time by unthrottling job earlier
  hw/ide/ahci: Log lost IRQs
  iotests: log messages from notrun()
  block/block-copy: Simplify block_copy_do_copy()
  block/block-copy: Fix uninitialized variable in block_copy_task_entry
  block: Drop @child_class from bdrv_child_perm()
  block: Pass BdrvChildRole in remaining cases
  block: Drop child_file
  block: Drop bdrv_format_default_perms()
  block: Make bdrv_filter_default_perms() static
  block: Use bdrv_default_perms()
  tests: Use child_of_bds instead of child_file
  block: Use child_of_bds in remaining places
  block: Make filter drivers use child_of_bds
  block: Make format drivers use child_of_bds
  block: Drop child_backing
  block: Make backing files child_of_bds children
  block: Drop child_format
  block: Switch child_format users to child_of_bds
  ...

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/a89af8c20ab2...bffe88d139ad



reply via email to

[Prev in Thread] Current Thread [Next in Thread]