[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 13/14] qemu-img: Use QAPI visitor to generate
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH v2 13/14] qemu-img: Use QAPI visitor to generate JSON |
Date: |
Wed, 25 Nov 2015 08:42:47 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 11/25/2015 12:39 AM, Fam Zheng wrote:
> A visible improvement is that "filename" is now included in the output
> if it's valid.
>
> Signed-off-by: Fam Zheng <address@hidden>
> ---
> qemu-img.c | 39 ++++++++++++-------
> tests/qemu-iotests/122.out | 96
> ++++++++++++++++++++++++++--------------------
> 2 files changed, 79 insertions(+), 56 deletions(-)
>
> @@ -2155,21 +2161,26 @@ static void dump_map_entry(OutputFormat
> output_format, MapEntry *e,
> }
> break;
> case OFORMAT_JSON:
> - printf("%s{ \"start\": %"PRId64", \"length\": %"PRId64","
> - " \"depth\": %ld,"
> - " \"zero\": %s, \"data\": %s",
> - (e->start == 0 ? "[" : ",\n"),
> - e->start, e->length, e->depth,
> - e->zero ? "true" : "false",
> - e->data ? "true" : "false");
> - if (e->has_offset) {
> - printf(", \"offset\": %"PRId64"", e->offset);
> - }
> - putchar('}');
> + ov = qmp_output_visitor_new();
> + visit_type_MapEntry(qmp_output_get_visitor(ov),
> + &e, NULL, &error_abort);
> + obj = qmp_output_get_qobject(ov);
> + str = qobject_to_json(obj);
It would be nice to someday add a visitor that goes directly to json,
instead of through an intermediate QObject. But that's not for this
series; your conversion here is sane.
> @@ -2213,9 +2224,9 @@ static int get_block_status(BlockDriverState *bs,
> int64_t sector_num,
> e->offset = ret & BDRV_BLOCK_OFFSET_MASK;
> e->has_offset = !!(ret & BDRV_BLOCK_OFFSET_VALID);
> e->depth = depth;
> - if (e->has_offset) {
> + if (file && e->has_offset) {
> e->has_filename = true;
> - e->filename = bs->filename;
> + e->filename = file->filename;
Does this hunk belong in a different patch?
Reviewed-by: Eric Blake <address@hidden>
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH v2 09/14] vdi: Assign bs->file->bs to file in vdi_co_get_block_status, (continued)
- [Qemu-devel] [PATCH v2 09/14] vdi: Assign bs->file->bs to file in vdi_co_get_block_status, Fam Zheng, 2015/11/25
- [Qemu-devel] [PATCH v2 10/14] vpc: Assign bs->file->bs to file in vpc_co_get_block_status, Fam Zheng, 2015/11/25
- [Qemu-devel] [PATCH v2 11/14] vmdk: Return extent's file in bdrv_get_block_status, Fam Zheng, 2015/11/25
- [Qemu-devel] [PATCH v2 12/14] qemu-img: Make MapEntry a QAPI struct, Fam Zheng, 2015/11/25
- [Qemu-devel] [PATCH v2 13/14] qemu-img: Use QAPI visitor to generate JSON, Fam Zheng, 2015/11/25
- Re: [Qemu-devel] [PATCH v2 13/14] qemu-img: Use QAPI visitor to generate JSON,
Eric Blake <=
- [Qemu-devel] [PATCH v2 14/14] iotests: Add "qemu-img map" test for VMDK extents, Fam Zheng, 2015/11/25