qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: arei.gonglei@huawei.com
Cc: weidong.huang@huawei.com, aliguori@amazon.com, armbru@redhat.com,
	luonengjun@huawei.com, peter.huangpeng@huawei.com,
	qemu-devel@nongnu.org, stefanha@redhat.com, pbonzini@redhat.com,
	lcapitulino@redhat.com, afaerber@suse.de
Subject: Re: [Qemu-devel] [PATCH v4 0/5] add description field in ObjectProperty and PropertyInfo struct
Date: Tue, 30 Sep 2014 14:35:28 +0300	[thread overview]
Message-ID: <20140930113528.GE7089@redhat.com> (raw)
In-Reply-To: <1412046159-5144-1-git-send-email-arei.gonglei@huawei.com>

On Tue, Sep 30, 2014 at 11:02:34AM +0800, arei.gonglei@huawei.com wrote:
> 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)

Weird. 06.0 is clearly not an int, is it?

> 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

BTW, any way we can find out and report default values
as well? E.g.
virtio-blk-pci.indirect_desc=bool (on/off) default:on

This idea should not block this patch of course.

> 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
> 

  parent reply	other threads:[~2014-09-30 11:32 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140930113528.GE7089@redhat.com \
    --to=mst@redhat.com \
    --cc=afaerber@suse.de \
    --cc=aliguori@amazon.com \
    --cc=arei.gonglei@huawei.com \
    --cc=armbru@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=luonengjun@huawei.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.huangpeng@huawei.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=weidong.huang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).