qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 4db6ce: block/dirty-bitmap: add recording and


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 4db6ce: block/dirty-bitmap: add recording and busy properties
Date: Wed, 13 Mar 2019 12:09:59 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 4db6ceb0b594e179fcbd46a351b8cebaa840bf0d
      
https://github.com/qemu/qemu/commit/4db6ceb0b594e179fcbd46a351b8cebaa840bf0d
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M qapi/block-core.json
    M qemu-deprecated.texi
    M tests/qemu-iotests/236.out

  Log Message:
  -----------
  block/dirty-bitmap: add recording and busy properties

The current API allows us to report a single status, which we've defined as:

Frozen: has a successor, treated as qmp_locked, may or may not be enabled.
Locked: no successor, qmp_locked. may or may not be enabled.
Disabled: Not frozen or locked, disabled.
Active: Not frozen, locked, or disabled.

The problem is that both "Frozen" and "Locked" mean nearly the same thing,
and that both of them do not intuit whether they are recording guest writes
or not.

This patch deprecates that status field and introduces two orthogonal
properties instead to replace it.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 50a47257f8f1368ba08e4789bb63ca84c4306dde
      
https://github.com/qemu/qemu/commit/50a47257f8f1368ba08e4789bb63ca84c4306dde
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M include/block/dirty-bitmap.h
    M migration/block-dirty-bitmap.c

  Log Message:
  -----------
  block/dirty-bitmaps: rename frozen predicate helper

"Frozen" was a good description a long time ago, but it isn't adequate now.
Rename the frozen predicate to has_successor to make the semantics of the
predicate more clear to outside callers.

In the process, remove some calls to frozen() that no longer semantically
make sense. For bdrv_enable_dirty_bitmap_locked and
bdrv_disable_dirty_bitmap_locked, it doesn't make sense to prohibit QEMU
internals from performing this action when we only wished to prohibit QMP
users from issuing these commands. All of the QMP API commands for bitmap
manipulation already check against user_locked() to prohibit these actions.

Several other assertions really want to check that the bitmap isn't in-use
by another operation -- use the bitmap_user_locked function for this instead,
which presently also checks for has_successor. This leaves some redundant
checks of has_successor through different helpers that are addressed in
forthcoming patches.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: c28ddbb07ef39d79a81941d97faa1a1bb1ce2249
      
https://github.com/qemu/qemu/commit/c28ddbb07ef39d79a81941d97faa1a1bb1ce2249
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c

  Log Message:
  -----------
  block/dirty-bitmap: remove set/reset assertions against enabled bit

bdrv_set_dirty_bitmap and bdrv_reset_dirty_bitmap are only used as an
internal API by the mirror and migration areas of our code. These
calls modify the bitmap, but do so at the behest of QEMU and not the
guest.

Presently, these bitmaps are always "enabled" anyway, but there's no
reason they have to be.

Modify these internal APIs to drop this assertion.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 8b2e20f64f25a5bf9a7cd45b4babdf2d7416f7ad
      
https://github.com/qemu/qemu/commit/8b2e20f64f25a5bf9a7cd45b4babdf2d7416f7ad
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c

  Log Message:
  -----------
  block/dirty-bitmap: change semantics of enabled predicate

Currently, the enabled predicate means something like:
"the QAPI status of the bitmap is ACTIVE."
After this patch, it should mean exclusively:
"This bitmap is recording guest writes, and is allowed to do so."

In many places, this is how this predicate was already used.
Internal usages of the bitmap QPI can call user_locked to find out if
the bitmap is in use by an operation.

To accommodate this, modify the create_successor routine to now
explicitly disable the parent bitmap at creation time.

Justifications:

1. bdrv_dirty_bitmap_status suffers no change from the lack of
   1:1 parity with the new predicates because of the order in which
   the predicates are checked. This is now only for compatibility.

2. bdrv_set_dirty() is unchanged: pre-patch, it was skipping bitmaps that were
   disabled or had a successor, while post-patch it is only skipping bitmaps
   that are disabled. To accommodate this, create_successor now ensures that
   any bitmap with a successor is explicitly disabled.

3. qcow2_store_persistent_dirty_bitmaps: No functional change. This function
   cares only about the literal enabled bit, and makes no effort to check if
   the bitmap is in-use or not. After this patch there are still no ways to
   produce an enabled bitmap with a successor.

4. block_dirty_bitmap_enable_prepare
   block_dirty_bitmap_disable_prepare
   init_dirty_bitmap_migration
   nbd_export_new

   These functions care about the literal enabled bit,
   and already check user_locked separately.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 3b78a92776bf1199b6864f2f38d9d341fb741f36
      
https://github.com/qemu/qemu/commit/3b78a92776bf1199b6864f2f38d9d341fb741f36
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M nbd/server.c

  Log Message:
  -----------
  nbd: change error checking order for bitmaps

Check that the bitmap is not in use prior to it checking if it is
not enabled/recording guest writes. The bitmap being busy was likely
at the behest of the user, so this error has a greater chance of being
understood by the user.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 21d2376f264bcaa1692bd71ab1f99b9b0ff5afbf
      
https://github.com/qemu/qemu/commit/21d2376f264bcaa1692bd71ab1f99b9b0ff5afbf
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c

  Log Message:
  -----------
  block/dirty-bitmap: explicitly lock bitmaps with successors

Instead of implying a user_locked/busy status, make it explicit.
Now, bitmaps in use by migration, NBD or backup operations
are all treated the same way with the same code paths.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 27a1b301a448a0426a96716484fc034b73c10c51
      
https://github.com/qemu/qemu/commit/27a1b301a448a0426a96716484fc034b73c10c51
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M blockdev.c
    M include/block/dirty-bitmap.h
    M migration/block-dirty-bitmap.c
    M nbd/server.c

  Log Message:
  -----------
  block/dirty-bitmaps: unify qmp_locked and user_locked calls

These mean the same thing now. Unify them and rename the merged call
bdrv_dirty_bitmap_busy to indicate semantically what we are describing,
as well as help disambiguate from the various _locked and _unlocked
versions of bitmap helpers that refer to mutex locks.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 1e6fddcd6f2d3b6b8c7584004763b376334a8457
      
https://github.com/qemu/qemu/commit/1e6fddcd6f2d3b6b8c7584004763b376334a8457
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c

  Log Message:
  -----------
  block/dirty-bitmaps: move comment block

Simply move the big status enum comment block to above the status
function, and document it as being deprecated. The whole confusing
block can get deleted in three releases time.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 2f158ca7b63175c5f0ac9a65e933e23deac46caa
      
https://github.com/qemu/qemu/commit/2f158ca7b63175c5f0ac9a65e933e23deac46caa
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M blockdev.c

  Log Message:
  -----------
  blockdev: remove unused paio parameter documentation

This field isn't present anymore.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: c61b198b63219b489908c87371acae8c986ce4d3
      
https://github.com/qemu/qemu/commit/c61b198b63219b489908c87371acae8c986ce4d3
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

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

  Log Message:
  -----------
  iotests: add busy/recording bit test to 124

This adds a simple test that ensures the busy bit works for push backups,
as well as doubling as bonus test for incremental backups that get interrupted
by EIO errors.

Recording bit tests are already handled sufficiently by 236.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Tested-by: Eric Blake <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: b0f455599d0f092abc11aa3daba693be1453d29a
      
https://github.com/qemu/qemu/commit/b0f455599d0f092abc11aa3daba693be1453d29a
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M include/block/dirty-bitmap.h
    M qapi/block-core.json

  Log Message:
  -----------
  block/dirty-bitmaps: add inconsistent bit

Add an inconsistent bit to dirty-bitmaps that allows us to report a bitmap as
persistent but potentially inconsistent, i.e. if we find bitmaps on a qcow2
that have been marked as "in use".

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 0064cfefa4e90c11e394befb7abe47602f2f30d7
      
https://github.com/qemu/qemu/commit/0064cfefa4e90c11e394befb7abe47602f2f30d7
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M qapi/block-core.json

  Log Message:
  -----------
  block/dirty-bitmap: add inconsistent status

Even though the status field is deprecated, we still have to support
it for a few more releases. Since this is a very new kind of bitmap
state, it makes sense for it to have its own status field.

Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: John Snow <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 3ae96d66840f72ef54902d012dbdf87ef4e9fe0c
      
https://github.com/qemu/qemu/commit/3ae96d66840f72ef54902d012dbdf87ef4e9fe0c
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M blockdev.c
    M include/block/dirty-bitmap.h
    M migration/block-dirty-bitmap.c
    M nbd/server.c

  Log Message:
  -----------
  block/dirty-bitmaps: add block_dirty_bitmap_check function

Instead of checking against busy, inconsistent, or read only directly,
use a check function with permissions bits that let us streamline the
checks without reproducing them in many places.

Included in this patch are permissions changes that simply add the
inconsistent check to existing permissions call spots, without
addressing existing bugs.

In general, this means that busy+readonly checks become BDRV_BITMAP_DEFAULT,
which checks against all three conditions. busy-only checks become
BDRV_BITMAP_ALLOW_RO.

Notably, remove allows inconsistent bitmaps, so it doesn't follow the pattern.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: a54a0c113b333aee49e484758fab7f1f1c593dd3
      
https://github.com/qemu/qemu/commit/a54a0c113b333aee49e484758fab7f1f1c593dd3
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M blockdev.c

  Log Message:
  -----------
  block/dirty-bitmaps: prohibit readonly bitmaps for backups

drive and blockdev backup cannot use readonly bitmaps, because the
sync=incremental mechanism actually edits the bitmaps on success.

If you really want to do this operation, use a copied bitmap.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: c3edf13cd1efdb5a59e0ae4f15e63080ffb35525
      
https://github.com/qemu/qemu/commit/c3edf13cd1efdb5a59e0ae4f15e63080ffb35525
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M blockdev.c

  Log Message:
  -----------
  block/dirty-bitmaps: prohibit removing readonly bitmaps

Remove is an inherently RW operation, so this will fail anyway, but
we can fail it very quickly instead of trying and failing, so do so.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: cb8e58e3de1a0f39c60de272faa0133b98b02cb5
      
https://github.com/qemu/qemu/commit/cb8e58e3de1a0f39c60de272faa0133b98b02cb5
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c

  Log Message:
  -----------
  block/dirty-bitmaps: disallow busy bitmaps as merge source

We didn't do any state checking on source bitmaps at all,
so this adds inconsistent and busy checks. readonly is
allowed, so you can still copy a readonly bitmap to a new
destination to use it for operations like drive-backup.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 74da6b943565c451d275de1b0253546c5e729d20
      
https://github.com/qemu/qemu/commit/74da6b943565c451d275de1b0253546c5e729d20
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/qcow2-bitmap.c

  Log Message:
  -----------
  block/dirty-bitmaps: implement inconsistent bit

Set the inconsistent bit on load instead of rejecting such bitmaps.
There is no way to un-set it; the only option is to delete the bitmap.

Obvervations:
- bitmap loading does not need to update the header for in_use bitmaps.
- inconsistent bitmaps don't need to have their data loaded; they're
  glorified corruption sentinels.
- bitmap saving does not need to save inconsistent bitmaps back to disk.
- bitmap reopening DOES need to drop the readonly flag from inconsistent
  bitmaps to allow reopening of qcow2 files with non-qemu-owned bitmaps
  being eventually flushed back to disk.

Signed-off-by: John Snow <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 796a3798ab882ae78a8203acd335ded4e10e3afb
      
https://github.com/qemu/qemu/commit/796a3798ab882ae78a8203acd335ded4e10e3afb
  Author: Eric Blake <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M block/qcow2-bitmap.c
    M blockdev.c
    M include/block/dirty-bitmap.h
    M migration/block-dirty-bitmap.c

  Log Message:
  -----------
  bitmaps: Fix typo in function name

Commit a88b179f introduced the ability to set and query bitmap
persistence, but with an atypical spelling.

Signed-off-by: Eric Blake <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: 2fd490c614500fc669386eaf8710cd2d015f548e
      
https://github.com/qemu/qemu/commit/2fd490c614500fc669386eaf8710cd2d015f548e
  Author: Vladimir Sementsov-Ogievskiy <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M docs/interop/qcow2.txt

  Log Message:
  -----------
  docs/interop/qcow2: Improve bitmap flag in_use specification

We already use (we didn't notice it) IN_USE flag for marking bitmap
metadata outdated, such as AUTO flag, which mirrors enabled/disabled
bitmaps. Now we are going to support bitmap resize, so it's good to
write IN_USE meaning with more details.

Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: bf5f0cf5d819cce45dd578a19386d8b60022654f
      
https://github.com/qemu/qemu/commit/bf5f0cf5d819cce45dd578a19386d8b60022654f
  Author: Vladimir Sementsov-Ogievskiy <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/qcow2-bitmap.c

  Log Message:
  -----------
  block/qcow2-bitmap: Don't check size for IN_USE bitmap

We are going to allow image resize when there are persistent bitmaps.
It may lead to appearing of inconsistent bitmaps (IN_USE=1) with
inconsistent size. But we still want to load them as inconsistent.

Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>


  Commit: d19c6b36ffe09cec7ce7ac6a3e979bfe923ebba9
      
https://github.com/qemu/qemu/commit/d19c6b36ffe09cec7ce7ac6a3e979bfe923ebba9
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

  Changed paths:
    M block/qcow2-bitmap.c
    M block/qcow2.c
    M block/qcow2.h

  Log Message:
  -----------
  block/qcow2-bitmap: Allow resizes with persistent bitmaps

Since we now load all bitmaps into memory anyway, we can just truncate
them in-memory and then flush them back to disk. Just in case, we will
still check and enforce that this shortcut is valid -- i.e. that any
bitmap described on-disk is indeed in-memory and can be modified.

If there are any inconsistent bitmaps, we refuse to allow the truncate
as we do not actually load these bitmaps into memory, and it isn't safe
or reasonable to attempt to truncate corrupted data.

Signed-off-by: John Snow <address@hidden>
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
  [vsementsov: drop bitmap flushing, fix block comments style]
Signed-off-by: John Snow <address@hidden>


  Commit: e2ec4119dc57e9d65e419b2e9071d35300aa1d92
      
https://github.com/qemu/qemu/commit/e2ec4119dc57e9d65e419b2e9071d35300aa1d92
  Author: John Snow <address@hidden>
  Date:   2019-03-12 (Tue, 12 Mar 2019)

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

  Log Message:
  -----------
  tests/qemu-iotests: add bitmap resize test 246

Test that we can actually resize qcow2 images with persistent bitmaps
correctly. Throw some other goofy stuff at the test while we're at it,
like adding bitmaps of different granularities and at different times.

Signed-off-by: John Snow <address@hidden>
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Tested-by: Eric Blake <address@hidden>
Message-id: address@hidden
   [vsmentsov: drop \n from the end of test output,
      test output changed a bit: some bitmaps goes in other order
      int the output]
Signed-off-by: John Snow <address@hidden>


  Commit: 523a2a42c3abd65b503610b2a18cd7fc74c6c61e
      
https://github.com/qemu/qemu/commit/523a2a42c3abd65b503610b2a18cd7fc74c6c61e
  Author: Peter Maydell <address@hidden>
  Date:   2019-03-13 (Wed, 13 Mar 2019)

  Changed paths:
    M block/dirty-bitmap.c
    M block/qcow2-bitmap.c
    M block/qcow2.c
    M block/qcow2.h
    M blockdev.c
    M docs/interop/qcow2.txt
    M include/block/dirty-bitmap.h
    M migration/block-dirty-bitmap.c
    M nbd/server.c
    M qapi/block-core.json
    M qemu-deprecated.texi
    M tests/qemu-iotests/124
    M tests/qemu-iotests/124.out
    M tests/qemu-iotests/236.out
    A tests/qemu-iotests/246
    A tests/qemu-iotests/246.out
    M tests/qemu-iotests/group

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/jnsnow/tags/bitmaps-pull-request' into 
staging

Pull request

# gpg: Signature made Tue 12 Mar 2019 20:23:08 GMT
# gpg:                using RSA key F9B7ABDBBCACDF95BE76CBD07DEF8106AAFC390E
# gpg: Good signature from "John Snow (John Huston) <address@hidden>" [full]
# Primary key fingerprint: FAEB 9711 A12C F475 812F  18F2 88A9 064D 1835 61EB
#      Subkey fingerprint: F9B7 ABDB BCAC DF95 BE76  CBD0 7DEF 8106 AAFC 390E

* remotes/jnsnow/tags/bitmaps-pull-request: (22 commits)
  tests/qemu-iotests: add bitmap resize test 246
  block/qcow2-bitmap: Allow resizes with persistent bitmaps
  block/qcow2-bitmap: Don't check size for IN_USE bitmap
  docs/interop/qcow2: Improve bitmap flag in_use specification
  bitmaps: Fix typo in function name
  block/dirty-bitmaps: implement inconsistent bit
  block/dirty-bitmaps: disallow busy bitmaps as merge source
  block/dirty-bitmaps: prohibit removing readonly bitmaps
  block/dirty-bitmaps: prohibit readonly bitmaps for backups
  block/dirty-bitmaps: add block_dirty_bitmap_check function
  block/dirty-bitmap: add inconsistent status
  block/dirty-bitmaps: add inconsistent bit
  iotests: add busy/recording bit test to 124
  blockdev: remove unused paio parameter documentation
  block/dirty-bitmaps: move comment block
  block/dirty-bitmaps: unify qmp_locked and user_locked calls
  block/dirty-bitmap: explicitly lock bitmaps with successors
  nbd: change error checking order for bitmaps
  block/dirty-bitmap: change semantics of enabled predicate
  block/dirty-bitmap: remove set/reset assertions against enabled bit
  ...

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

# Conflicts:
#       tests/qemu-iotests/group


Compare: https://github.com/qemu/qemu/compare/36fe77096645...523a2a42c3ab



reply via email to

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