Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct

2014-10-13 Thread Gonglei
On 2014/10/9 19:51, Gonglei wrote:

 Andreas, ping?
 


Ping..., again.

 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=linkiothread
 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=childvirtio-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=linkiothread
 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=childvirtio-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

Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct

2014-10-13 Thread Andreas Färber
Am 13.10.2014 um 12:55 schrieb Gonglei:
 On 2014/10/9 19:51, Gonglei wrote:
 
 Andreas, ping?

 
 
 Ping..., again.

Already queued, not yet pushed. On my way to KVM Forum...

Regards,
Andreas

 
 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=linkiothread
 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=childvirtio-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=linkiothread
 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=childvirtio-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

Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct

2014-10-13 Thread Andreas Färber
Am 13.10.2014 um 15:40 schrieb Andreas Färber:
 Already queued, not yet pushed. On my way to KVM Forum...

Fixed up the preceding series and pushed this one now:
https://github.com/afaerber/qemu-cpu/commits/qom-next

Thanks,
Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct

2014-10-09 Thread Gonglei
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=linkiothread
  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=childvirtio-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=linkiothread
  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=childvirtio-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

Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct

2014-10-08 Thread Gonglei
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=linkiothread
 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=childvirtio-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=linkiothread
 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=childvirtio-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

2014-10-07 Thread arei.gonglei
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)

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=linkiothread
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=childvirtio-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=linkiothread
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=childvirtio-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(-)

-- 
1.7.12.4





Re: [Qemu-devel] [PATCH v5 0/5] add description field in ObjectProperty and PropertyInfo struct

2014-10-07 Thread Paolo Bonzini
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.

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=linkiothread
 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=childvirtio-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=linkiothread
 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=childvirtio-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(-)