BlockDeviceMapEntry has never been used. It was added in commit
facd6e2 "so that it is published through the introspection mechanism."
What exactly introspecting types that aren't used for anything could
accomplish isn't clear. What "introspection mechanism" to use is also
nebulous. To the best of my knowledge, there has never been one that
covered this type. Certainly not query-qmp-schema, which includes
only types that are actually used in QMP.
Not being able to introspect BlockDeviceMapEntry hasn't bothered
anyone enough to complain in almost four years. Get rid of it.
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Eric Blake <eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
qapi/block-core.json | 29 -----------------------------
1 file changed, 29 deletions(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index 833c602..27790f3 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -383,35 +383,6 @@
{ 'enum': 'BlockDeviceIoStatus', 'data': [ 'ok', 'failed', 'nospace' ] }
##
-# @BlockDeviceMapEntry:
-#
-# Entry in the metadata map of the device (returned by "qemu-img map")
-#
-# @start: Offset in the image of the first byte described by this entry
-# (in bytes)
-#
-# @length: Length of the range described by this entry (in bytes)
-#
-# @depth: Number of layers (0 = top image, 1 = top image's backing file, etc.)
-# before reaching one for which the range is allocated. The value is
-# in the range 0 to the depth of the image chain - 1.
-#
-# @zero: the sectors in this range read as zeros
-#
-# @data: reading the image will actually read data from a file (in particular,
-# if @offset is present this means that the sectors are not simply
-# preallocated, but contain actual data in raw format)
-#
-# @offset: if present, the image file stores the data for this range in
-# raw format at the given offset.
-#
-# Since: 1.7
-##
-{ 'struct': 'BlockDeviceMapEntry',
- 'data': { 'start': 'int', 'length': 'int', 'depth': 'int', 'zero': 'bool',
- 'data': 'bool', '*offset': 'int' } }
-
-##
# @DirtyBitmapStatus:
#
# An enumeration of possible states that a dirty bitmap can report to the user.
--
2.7.5
On 07/28/2017 08:45 AM, Markus Armbruster wrote: > BlockDeviceMapEntry has never been used. It was added in commit > facd6e2 "so that it is published through the introspection mechanism." > What exactly introspecting types that aren't used for anything could > accomplish isn't clear. What "introspection mechanism" to use is also > nebulous. To the best of my knowledge, there has never been one that > covered this type. Certainly not query-qmp-schema, which includes > only types that are actually used in QMP. > > Not being able to introspect BlockDeviceMapEntry hasn't bothered > anyone enough to complain in almost four years. Get rid of it. This type is the schema for 'qemu-img map --output=json'. And I had a patch once (that I need to revive) that added a JSON Output visitor; at which point I fixed qemu-img to convert from QAPI to JSON instead of open-coding its construction of its output string, at which point the QAPI generated code for this type is useful. But that's a revert away for when I rebase my series to actually use it; and in the meantime, pruning unused types isn't hurting anything. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
On 2017-07-28 20:10, Eric Blake wrote: > On 07/28/2017 08:45 AM, Markus Armbruster wrote: >> BlockDeviceMapEntry has never been used. It was added in commit >> facd6e2 "so that it is published through the introspection mechanism." >> What exactly introspecting types that aren't used for anything could >> accomplish isn't clear. What "introspection mechanism" to use is also >> nebulous. To the best of my knowledge, there has never been one that >> covered this type. Certainly not query-qmp-schema, which includes >> only types that are actually used in QMP. >> >> Not being able to introspect BlockDeviceMapEntry hasn't bothered >> anyone enough to complain in almost four years. Get rid of it. > > This type is the schema for 'qemu-img map --output=json'. And I had a > patch once (that I need to revive) that added a JSON Output visitor; at > which point I fixed qemu-img to convert from QAPI to JSON instead of > open-coding its construction of its output string, at which point the > QAPI generated code for this type is useful. (Very late reply, I know, I just stumbled over *MapEntry when looking over block-core.json what we might want to deprecate in 3.0) We already use MapEntry there -- why don't we output just that instead? The only difference seems to be an additional @filename parameter which would probably be actually nice to include in the output. Except that BlockDeviceMapEntry's documentation is better, so we should merge that into MapEntry before removing the former. Max
© 2016 - 2026 Red Hat, Inc.