This patch series is to replace QEMUOptionParameter with QemuOpts, so that only one Qemu Option structure is kept in QEMU code.
--- Changes to v23: * Improve conversion functions, make .assigned info not lost. * Update qcow2.c amend_option, keep checking 'assigned'. * Improve qemu_opt_get_*_del, after get option, delete all settings to this option (since in qemu_opt_set, if set option many times, there will be many opts in the list for the same option). * Some other fixes for qemu-iotests * Other fixes to v23 comments Chunyan Liu (31): QemuOpts: move find_desc_by_name ahead for later calling QemuOpts: add def_value_str to QemuOptDesc qapi: output def_value_str when query command line options QemuOpts: change opt->name|str from (const char *) to (char *) QemuOpts: move qemu_opt_del ahead for later calling QemuOpts: add qemu_opt_get_*_del functions for replace work QemuOpts: add qemu_opts_print_help to replace print_option_help QemuOpts: add conversion between QEMUOptionParameter to QemuOpts QemuOpts: add qemu_opts_append to replace append_option_parameters QemuOpts: check NULL input for qemu_opts_del qemu_opts_print: change fprintf stderr to printf change block layer to support both QemuOpts and QEMUOptionParamter vvfat.c: handle cross_driver's create_options and create_opts cow.c: replace QEMUOptionParameter with QemuOpts gluster.c: replace QEMUOptionParameter with QemuOpts iscsi.c: replace QEMUOptionParameter with QemuOpts qcow.c: replace QEMUOptionParameter with QemuOpts qcow2.c: replace QEMUOptionParameter with QemuOpts qed.c: replace QEMUOptionParameter with QemuOpts raw-posix.c: replace QEMUOptionParameter with QemuOpts raw-win32.c: replace QEMUOptionParameter with QemuOpts raw_bsd.c: replace QEMUOptionParameter with QemuOpts rbd.c: replace QEMUOptionParameter with QemuOpts sheepdog.c: replace QEMUOptionParameter with QemuOpts ssh.c: replace QEMUOptionParameter with QemuOpts vdi.c: replace QEMUOptionParameter with QemuOpts vhdx.c: replace QEMUOptionParameter with QemuOpts vmdk.c: replace QEMUOptionParameter with QemuOpts vpc.c: replace QEMUOptionParameter with QemuOpts cleanup QEMUOptionParameter QemuOpts: cleanup tmp 'allocated' member from QemuOptsList block.c | 96 ++++---- block/cow.c | 52 ++-- block/gluster.c | 73 +++--- block/iscsi.c | 32 ++- block/qcow.c | 72 +++--- block/qcow2.c | 264 +++++++++++---------- block/qed.c | 112 ++++----- block/qed.h | 3 +- block/raw-posix.c | 55 ++--- block/raw-win32.c | 38 +-- block/raw_bsd.c | 25 +- block/rbd.c | 61 +++-- block/sheepdog.c | 102 ++++---- block/ssh.c | 30 ++- block/vdi.c | 71 +++--- block/vhdx.c | 97 ++++---- block/vhdx.h | 1 + block/vmdk.c | 121 +++++----- block/vpc.c | 60 ++--- block/vvfat.c | 11 +- include/block/block.h | 7 +- include/block/block_int.h | 9 +- include/qemu/option.h | 53 +---- include/qemu/option_int.h | 4 +- qapi-schema.json | 6 +- qapi/opts-visitor.c | 10 +- qemu-img.c | 89 ++++--- qmp-commands.hx | 2 + util/qemu-config.c | 4 + util/qemu-option.c | 587 ++++++++++++++++++++-------------------------- 30 files changed, 1029 insertions(+), 1118 deletions(-) -- 1.7.12.4