[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct |
Date: |
Wed, 08 Oct 2014 00:22:49 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.1.1 |
Il 07/10/2014 08:33, address@hidden ha scritto:
> From: Gonglei <address@hidden>
>
> v5 -> v4:
> 1. add some improvements by Michael's suggtion, Thanks. (Michael)
> 2. add 'Reviewed-by' tag (Paolo, Michael, Eric)
Andreas, this series depends on patches in qom-next so you'll have to
take it.
Thanks,
Paolo
> v4 -> v3:
> 1. rebase on qom-next tree (Andreas)
> 2. fix memory leak in PATCH 2, move object_property_set_description calling
> in object_property_add_alias() from PATCH 3 to PATCH 2. (Paolo)
> 3. drop "?:" in PATCH 2, call g_strdup() directly
> 4. rework PATCH 4, change description as optional field,
> drop "?:" conditional express (Eric)
>
> v3 -> v2:
> 1. add a new "description" field to DevicePropertyInfo, and format
> it in qdev_device_help() in PATCH 6 (Paolo)
>
> v2 -> v1:
> 1. rename "fail" label to "out" in PATCH 1 (Andreas)
> 2. improve descriptions in PATCH 3 (Paolo, adding Signed-off-by Paolo in
> this patch)
> 3. rework PATCH 5, set description at qdev_property_add_static(),
> then copy the description of target_obj.property. (Paolo)
> 4. free description filed of ObjectProperty avoid memory leak in PATCH 4.
>
> This patch series based on qom-next tree:
> https://github.com/afaerber/qemu-cpu/commits/qom-next
>
> Add a description field in both ObjectProperty and PropertyInfo struct.
> The descriptions can serve as documentation in the code,
> and they can be used to provide better help. For example:
>
> Before this patch series:
>
> $./qemu-system-x86_64 -device virtio-blk-pci,?
>
> virtio-blk-pci.iothread=link<iothread>
> virtio-blk-pci.x-data-plane=bool
> virtio-blk-pci.scsi=bool
> virtio-blk-pci.config-wce=bool
> virtio-blk-pci.serial=str
> virtio-blk-pci.secs=uint32
> virtio-blk-pci.heads=uint32
> virtio-blk-pci.cyls=uint32
> virtio-blk-pci.discard_granularity=uint32
> virtio-blk-pci.bootindex=int32
> virtio-blk-pci.opt_io_size=uint32
> virtio-blk-pci.min_io_size=uint16
> virtio-blk-pci.physical_block_size=uint16
> virtio-blk-pci.logical_block_size=uint16
> virtio-blk-pci.drive=str
> virtio-blk-pci.virtio-backend=child<virtio-blk-device>
> virtio-blk-pci.command_serr_enable=on/off
> virtio-blk-pci.multifunction=on/off
> virtio-blk-pci.rombar=uint32
> virtio-blk-pci.romfile=str
> virtio-blk-pci.addr=pci-devfn
> virtio-blk-pci.event_idx=on/off
> virtio-blk-pci.indirect_desc=on/off
> virtio-blk-pci.vectors=uint32
> virtio-blk-pci.ioeventfd=on/off
> virtio-blk-pci.class=uint32
>
> After:
>
> $./qemu-system-x86_64 -device virtio-blk-pci,?
>
> virtio-blk-pci.iothread=link<iothread>
> virtio-blk-pci.x-data-plane=bool (on/off)
> virtio-blk-pci.scsi=bool (on/off)
> virtio-blk-pci.config-wce=bool (on/off)
> virtio-blk-pci.serial=str
> virtio-blk-pci.secs=uint32
> virtio-blk-pci.heads=uint32
> virtio-blk-pci.cyls=uint32
> virtio-blk-pci.discard_granularity=uint32
> virtio-blk-pci.bootindex=int32
> virtio-blk-pci.opt_io_size=uint32
> virtio-blk-pci.min_io_size=uint16
> virtio-blk-pci.physical_block_size=uint16 (A power of two between 512 and
> 32768)
> virtio-blk-pci.logical_block_size=uint16 (A power of two between 512 and
> 32768)
> virtio-blk-pci.drive=str (ID of a drive to use as a backend)
> virtio-blk-pci.virtio-backend=child<virtio-blk-device>
> virtio-blk-pci.command_serr_enable=bool (on/off)
> virtio-blk-pci.multifunction=bool (on/off)
> virtio-blk-pci.rombar=uint32
> virtio-blk-pci.romfile=str
> virtio-blk-pci.addr=int32 (Slot and optional function number, example: 06.0
> or 06)
> virtio-blk-pci.event_idx=bool (on/off)
> virtio-blk-pci.indirect_desc=bool (on/off)
> virtio-blk-pci.vectors=uint32
> virtio-blk-pci.ioeventfd=bool (on/off)
> virtio-blk-pci.class=uint32
>
>
> Gonglei (5):
> qdev: add description field in PropertyInfo struct
> qom: add description field in ObjectProperty struct
> qdev: set the object property's description to the qdev property's.
> qmp: print descriptions of object properties
> qdev: drop legacy_name from qdev properties
>
> hw/core/qdev-properties-system.c | 8 ++++----
> hw/core/qdev-properties.c | 14 ++++++++------
> hw/core/qdev.c | 5 +++++
> include/hw/qdev-core.h | 2 +-
> include/qom/object.h | 14 ++++++++++++++
> qapi-schema.json | 4 +++-
> qdev-monitor.c | 7 ++++++-
> qmp.c | 13 ++++++++++---
> qom/object.c | 20 ++++++++++++++++++++
> target-ppc/translate_init.c | 2 +-
> 10 files changed, 72 insertions(+), 17 deletions(-)
>
- [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct, arei.gonglei, 2014/10/07
- [Qemu-devel] [PATCH v5 3/5] qdev: set the object property's description to the qdev property's., arei.gonglei, 2014/10/07
- [Qemu-devel] [PATCH v5 4/5] qmp: print descriptions of object properties, arei.gonglei, 2014/10/07
- [Qemu-devel] [PATCH v5 5/5] qdev: drop legacy_name from qdev properties, arei.gonglei, 2014/10/07
- [Qemu-devel] [PATCH v5 2/5] qom: add description field in ObjectProperty struct, arei.gonglei, 2014/10/07
- [Qemu-devel] [PATCH v5 1/5] qdev: add description field in PropertyInfo struct, arei.gonglei, 2014/10/07
- Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct,
Paolo Bonzini <=