Andreas, ping? Best regards, -Gonglei
> -----Original Message----- > From: qemu-devel-bounces+arei.gonglei=hotmail....@nongnu.org > [mailto:qemu-devel-bounces+arei.gonglei=hotmail....@nongnu.org] On > Behalf Of Gonglei > Sent: Wednesday, October 08, 2014 6:46 PM > To: Paolo Bonzini > Cc: Huangweidong (C); m...@redhat.com; Luonengjun; arm...@redhat.com; > qemu-devel@nongnu.org; Huangpeng (Peter); lcapitul...@redhat.com; > afaer...@suse.de > Subject: Re: [Qemu-devel] [PATCH v5 0/5] add description field in > ObjectProperty and PropertyInfo struct > > On 2014/10/8 6:22, Paolo Bonzini wrote: > > > Il 07/10/2014 08:33, arei.gong...@huawei.com ha scritto: > >> From: Gonglei <arei.gong...@huawei.com> > >> > >> 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. > > > > Yes, please. Thanks! > > Best regards, > -Gonglei > > > 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(-) > >> > > > > >