qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v4 0/5] add description field in ObjectProperty and PropertyInfo struct
@ 2014-09-30  3:02 arei.gonglei
  2014-09-30  3:02 ` [Qemu-devel] [PATCH v4 1/5] qdev: add description field in " arei.gonglei
                   ` (7 more replies)
  0 siblings, 8 replies; 28+ messages in thread
From: arei.gonglei @ 2014-09-30  3:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: weidong.huang, aliguori, mst, armbru, luonengjun, peter.huangpeng,
	lcapitulino, Gonglei, stefanha, pbonzini, afaerber

From: Gonglei <arei.gonglei@huawei.com>

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 function number, example: 06.0)
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

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.

Thanks for review!

 Cc: Paolo Bonzini <pbonzini@redhat.com>
 Cc: Michael S. Tsirkin <mst@redhat.com>
 Cc: Markus Armbruster <armbru@redhat.com>


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             | 15 +++++++++++++++
 qapi-schema.json                 |  4 +++-
 qdev-monitor.c                   |  7 ++++++-
 qmp.c                            | 13 ++++++++++---
 qom/object.c                     | 20 ++++++++++++++++++++
 target-ppc/translate_init.c      |  2 +-
 10 files changed, 73 insertions(+), 17 deletions(-)

-- 
2.0.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2014-10-01  4:06 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-30  3:02 [Qemu-devel] [PATCH v4 0/5] add description field in ObjectProperty and PropertyInfo struct arei.gonglei
2014-09-30  3:02 ` [Qemu-devel] [PATCH v4 1/5] qdev: add description field in " arei.gonglei
2014-09-30 11:42   ` Michael S. Tsirkin
2014-09-30 13:14     ` Gonglei
2014-09-30 13:33       ` Michael S. Tsirkin
2014-09-30 13:36         ` Paolo Bonzini
2014-09-30 13:55           ` Michael S. Tsirkin
2014-09-30 13:53             ` Paolo Bonzini
2014-09-30 14:01               ` Michael S. Tsirkin
2014-09-30 14:02                 ` Paolo Bonzini
2014-10-01  4:05                   ` Gonglei
2014-09-30 14:01             ` Gonglei
2014-09-30  3:02 ` [Qemu-devel] [PATCH v4 2/5] qom: add description field in ObjectProperty struct arei.gonglei
2014-09-30 11:48   ` Michael S. Tsirkin
2014-09-30 13:18     ` Gonglei
2014-09-30  3:02 ` [Qemu-devel] [PATCH v4 3/5] qdev: set the object property's description to the qdev property's arei.gonglei
2014-09-30  3:02 ` [Qemu-devel] [PATCH v4 4/5] qmp: print descriptions of object properties arei.gonglei
2014-09-30 15:38   ` Eric Blake
2014-09-30  3:02 ` [Qemu-devel] [PATCH v4 5/5] qdev: drop legacy_name from qdev properties arei.gonglei
2014-09-30 11:43   ` Michael S. Tsirkin
2014-09-30 13:15     ` Gonglei
2014-09-30  8:54 ` [Qemu-devel] [PATCH v4 0/5] add description field in ObjectProperty and PropertyInfo struct Paolo Bonzini
2014-09-30 11:35 ` Michael S. Tsirkin
2014-09-30 11:53   ` Paolo Bonzini
2014-09-30 12:09   ` Markus Armbruster
2014-09-30 13:05   ` Gonglei
2014-09-30 13:32 ` Michael S. Tsirkin
2014-09-30 14:05   ` Gonglei

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).