qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH V9 0/4] replace QEMUOptionParameter with QemuOpt


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH V9 0/4] replace QEMUOptionParameter with QemuOpts parser
Date: Tue, 18 Dec 2012 14:36:01 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

On Mon, Dec 17, 2012 at 02:42:25PM +0800, Dong Xu Wang wrote:
> Patch 1-3 are from Luiz, added Markus's comments, discussion could be found
> here:
> http://lists.nongnu.org/archive/html/qemu-devel/2012-07/msg02716.html
> Patch 3 was changed according Paolo's comments.
> 
> Patch 4-5: because qemu_opts_create can not fail while id is null, so create
> function qemu_opts_create_nofail and use it.
> 
> Patch 6: create function qemu_opt_set_number, like qemu_opt_set_bool.
> 
> Patch 7: add def_value and use it in qemu_opts_print.
> 
> Patch 8: Create functions to pair with QEMUOptionParameter parser.
> 
> Patch 9: Use QemuOpts parser in Block.
> 
> Patch 10: Remove QEMUOptionParameter parser related code.
> 
> Patches 1 - 6 have been merged into block branch, so only patches 8 to 10
> are included.
> 
> v8->v9)
> 1) add qemu_ prefix to gluster_create_opts.
> 2) fix bug: bdrv_gluster_unix and bdrv_gluster_rdma should also be
>    converted.
> 
> v7->v8)
> 1) print "elements => accept any params" while opts_accepts_any() ==
> true.
> 2) since def_print_str is the default value if an option isn't set,
> so rename it to def_value_str.
> 3) rebase to upstream source tree.
> 4) add gluster.c, raw-win32.c, and rbd.c.
> 
> v6->v7:
> 1) Fix typo: enouth->enough.
> 2) use osdep.h:stringify(), not redefining new macro.
> 3) preserve TODO comment.
> 4) fix typo: BLOCK_OPT_ENCRYPT->BLOCK_OPT_STATIC.
> 5) initialize disk_type even when opts is NULL.
> 
> v5->v6:
> 1) allocate enough space in append_opts_list function.
> 2) judge if opts == NULL in block layer create functions.
> 3) use bdrv_create_file(filename, NULL) in qcow_create funtion.
> 4) made more readable while using qemu_opt_get_number funtion.
> 
> v4->v5:
> 1) Rewrite qemu_opts_create_nofail function based on Peter Maydell's comments.
> 2) Use g_strdup_printf in qemu_opt_set_number.
> 3) Rewrite qemu_opts_print.
> 4) .bdrv_create_options returns pointer directly. Fix a bug about 
> "encryption".
> 5) Check qemu_opt_get_number in raw-posix.c.
> 
> v3->v4:
> 1) Rebased to the newest source tree.
> 2) Remove redundant "#include "block-cache.h"
> 3) Other small changes.
> 
> v2->v3:
> 1) rewrite qemu_opt_set_bool and qemu_opt_set_number according Paolo's 
> coments.
> 2) split patches to make review easier.
> 
> v1->v2:
> 1) add Luiz's patches.
> 2) create qemu_opt_set_number() and qemu_opts_create_nofail() functions.
> 3) add QemuOptsList map to drivers.
> 4) use original opts parser, not creating new ones.
> 5) fix other bugs.
> 
> Dong Xu Wang (4):
>   add def_print_str and use it in qemu_opts_print.
>   Create four opts list related functions
>   Use QemuOpts support in block layer
>   remove QEMUOptionParameter related functions and struct
> 
>  block.c           |   91 ++++++-------
>  block.h           |    4 +-
>  block/cow.c       |   46 +++---
>  block/gluster.c   |   37 +++---
>  block/qcow.c      |   60 ++++----
>  block/qcow2.c     |  171 ++++++++++++-----------
>  block/qed.c       |   86 ++++++------
>  block/raw-posix.c |   65 ++++-----
>  block/raw-win32.c |   30 ++--
>  block/raw.c       |   30 +++--
>  block/rbd.c       |   63 ++++----
>  block/sheepdog.c  |   75 +++++-----
>  block/vdi.c       |   69 +++++-----
>  block/vmdk.c      |   74 +++++-----
>  block/vpc.c       |   67 +++++----
>  block/vvfat.c     |   11 +-
>  block_int.h       |    6 +-
>  qemu-img.c        |   61 ++++----
>  qemu-option.c     |  406 
> +++++++++++++++--------------------------------------
>  qemu-option.h     |   37 +----
>  20 files changed, 641 insertions(+), 848 deletions(-)

block/rbd.c: In function ‘qemu_rbd_create’:
block/rbd.c:315:9: error: ‘cluster_size’ undeclared (first use in this function)
block/rbd.c:315:9: note: each undeclared identifier is reported only once for 
each function it appears in
block/rbd.c: At top level:
block/rbd.c:945:5: error: unknown field ‘create_options’ specified in 
initializer
block/rbd.c:945:5: error: initialization from incompatible pointer type 
[-Werror]
block/rbd.c:945:5: error: (near initialization for 
‘bdrv_rbd.bdrv_save_vmstate’) [-Werror]

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]