diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2019-02-21 13:09:33 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2019-02-21 13:09:33 +0000 |
commit | fc3dbb90f2eb069801bfb4cfe9cbc83cf9c5f4a9 (patch) | |
tree | 645f74fe88345a863debb284cf7ac5d3527f1af7 /qapi | |
parent | 039e406603852e9ddb23b5965b6956d42304bc55 (diff) | |
parent | 0a6c86d024c52b1e66d4f7ec01a3bb8ea2600145 (diff) | |
download | qemu-fc3dbb90f2eb069801bfb4cfe9cbc83cf9c5f4a9.zip qemu-fc3dbb90f2eb069801bfb4cfe9cbc83cf9c5f4a9.tar.gz qemu-fc3dbb90f2eb069801bfb4cfe9cbc83cf9c5f4a9.tar.bz2 |
Merge remote-tracking branch 'remotes/jnsnow/tags/bitmaps-pull-request' into staging
Pull request
# gpg: Signature made Wed 20 Feb 2019 18:01:00 GMT
# gpg: using RSA key F9B7ABDBBCACDF95BE76CBD07DEF8106AAFC390E
# gpg: Good signature from "John Snow (John Huston) <jsnow@redhat.com>" [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:
blockdev: acquire aio_context for bitmap add/remove
block/dirty-bitmap: Documentation and Comment fixups
dirty-bitmap: Expose persistent flag to 'query-block'
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'qapi')
-rw-r--r-- | qapi/block-core.json | 39 |
1 files changed, 29 insertions, 10 deletions
diff --git a/qapi/block-core.json b/qapi/block-core.json index ee1ab7a..2b8afbb 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -420,17 +420,27 @@ # # An enumeration of possible states that a dirty bitmap can report to the user. # -# @frozen: The bitmap is currently in-use by a backup operation or block job, -# and is immutable. -# -# @disabled: The bitmap is currently in-use by an internal operation and is -# read-only. It can still be deleted. +# @frozen: The bitmap is currently in-use by some operation and is immutable. +# If the bitmap was @active prior to the operation, new writes by the +# guest are being recorded in a temporary buffer, and will not be lost. +# Generally, bitmaps are cleared on successful use in an operation and +# the temporary buffer is committed into the bitmap. On failure, the +# temporary buffer is merged back into the bitmap without first +# clearing it. +# Please refer to the documentation for each bitmap-using operation, +# See also @blockdev-backup, @drive-backup. +# +# @disabled: The bitmap is not currently recording new writes by the guest. +# This is requested explicitly via @block-dirty-bitmap-disable. +# It can still be cleared, deleted, or used for backup operations. # # @active: The bitmap is actively monitoring for new writes, and can be cleared, # deleted, or used for backup operations. # -# @locked: The bitmap is currently in-use by some operation and can not be -# cleared, deleted, or used for backup operations. (Since 2.12) +# @locked: The bitmap is currently in-use by some operation and is immutable. +# If the bitmap was @active prior to the operation, it is still +# recording new writes. If the bitmap was @disabled, it is not +# recording new writes. (Since 2.12) # # Since: 2.4 ## @@ -450,11 +460,14 @@ # # @status: current status of the dirty bitmap (since 2.4) # +# @persistent: true if the bitmap will eventually be flushed to persistent +# storage (since 4.0) +# # Since: 1.3 ## { 'struct': 'BlockDirtyInfo', 'data': {'*name': 'str', 'count': 'int', 'granularity': 'uint32', - 'status': 'DirtyBitmapStatus'} } + 'status': 'DirtyBitmapStatus', 'persistent': 'bool' } } ## # @Qcow2BitmapInfoFlags: @@ -2091,9 +2104,15 @@ # @block-dirty-bitmap-merge: # # Merge dirty bitmaps listed in @bitmaps to the @target dirty bitmap. -# The @bitmaps dirty bitmaps are unchanged. +# Dirty bitmaps in @bitmaps will be unchanged, except if it also appears +# as the @target bitmap. Any bits already set in @target will still be +# set after the merge, i.e., this operation does not clear the target. # On error, @target is unchanged. # +# The resulting bitmap will count as dirty any clusters that were dirty in any +# of the source bitmaps. This can be used to achieve backup checkpoints, or in +# simpler usages, to copy bitmaps. +# # Returns: nothing on success # If @node is not a valid block device, DeviceNotFound # If any bitmap in @bitmaps or @target is not found, GenericError @@ -2128,7 +2147,7 @@ ## # @x-debug-block-dirty-bitmap-sha256: # -# Get bitmap SHA256 +# Get bitmap SHA256. # # Returns: BlockDirtyBitmapSha256 on success # If @node is not a valid block device, DeviceNotFound |