From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52598) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZN2Zi-0007u1-Hg for qemu-devel@nongnu.org; Wed, 05 Aug 2015 13:33:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZN2Zh-0001Rp-Hx for qemu-devel@nongnu.org; Wed, 05 Aug 2015 13:33:58 -0400 From: Max Reitz Date: Wed, 5 Aug 2015 19:33:04 +0200 Message-Id: <1438795985-21903-17-git-send-email-mreitz@redhat.com> In-Reply-To: <1438795985-21903-1-git-send-email-mreitz@redhat.com> References: <1438795985-21903-1-git-send-email-mreitz@redhat.com> Subject: [Qemu-devel] [PATCH v6 16/17] qapi: Expose new qcow2 overlap check options List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-block@nongnu.org Cc: Kevin Wolf , qemu-devel@nongnu.org, Stefan Hajnoczi , Max Reitz Expose the two new options for controlling the memory usage of the overlap check implementation via QAPI. Signed-off-by: Max Reitz --- qapi/block-core.json | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/qapi/block-core.json b/qapi/block-core.json index 7b2efb8..0eb9c69 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -1562,6 +1562,33 @@ 'mode': 'Qcow2OverlapCheckMode' } } ## +# @Qcow2OverlapStructures +# +# Contains options for controlling the behavior of the metadata overlap +# prevention structures. +# +# These structures contain the position, length, and type of the metadata +# structures; one contains all of them in compressed form, the other one takes +# up more space, but has faster access times. Therefore, the latter acts as a +# cache of the former. +# +# @cache-size: #optional size (in bytes) of the cache, defaults to 64 kB +# +# @total-size-limit: #optional maximum total size (in bytes) of all the metadata +# overlap prevention data structures combined; if this limit +# is exceeded, a QCOW2_OVERLAP_CHECK_MEMORY_LIMIT_REACHED +# event will be emitted and some parts of the image may no +# longer be protected against erroneous overwriting of +# metadata by (meta)data of a different kind. Defaults to +# SIZE_MAX. +# +# Since: 2.5 +## +{ 'struct': 'Qcow2OverlapStructures', + 'data': { '*bitmap-size': 'int', + '*total-size-limit': 'int' } } + +## # @BlockdevOptionsQcow2 # # Driver specific block device options for qcow2. @@ -1583,6 +1610,9 @@ # @overlap-check: #optional which overlap checks to perform for writes # to the image, defaults to 'cached' (since 2.2) # +# @overlap-structures: #optional options for controlling the behavior of the +# metadata overlap prevention structures (since 2.5) +# # @cache-size: #optional the maximum total size of the L2 table and # refcount block caches in bytes (since 2.2) # @@ -1601,6 +1631,7 @@ '*pass-discard-snapshot': 'bool', '*pass-discard-other': 'bool', '*overlap-check': 'Qcow2OverlapChecks', + '*overlap-structures': 'Qcow2OverlapStructures', '*cache-size': 'int', '*l2-cache-size': 'int', '*refcount-cache-size': 'int' } } -- 2.4.6