On Mon, 23 Nov 2020 09:14:11 -0500
Paolo Bonzini <pbonzini@redhat.com> wrote:
> There is no need to load plugins in the middle of default device processing,
> move -plugin handling just before preconfig is entered.
>
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
> ---
> softmmu/vl.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/softmmu/vl.c b/softmmu/vl.c
> index 87c10f625c..ab08a0290c 100644
> --- a/softmmu/vl.c
> +++ b/softmmu/vl.c
> @@ -125,6 +125,7 @@ static const char *boot_order;
> static const char *boot_once;
> static const char *incoming;
> static const char *loadvm;
> +static QemuPluginList plugin_list = QTAILQ_HEAD_INITIALIZER(plugin_list);
> enum vga_retrace_method vga_retrace_method = VGA_RETRACE_DUMB;
> static int mem_prealloc; /* force preallocation of physical target memory */
> int display_opengl;
> @@ -3074,6 +3075,11 @@ static void qemu_init_board(void)
> create_default_memdev(current_machine, mem_path);
> }
>
> + /* process plugin before CPUs are created, but once -smp has been parsed */
> + if (qemu_plugin_load_list(&plugin_list)) {
> + exit(1);
> + }
> +
> machine_run_board_init(current_machine);
>
> /*
> @@ -3208,7 +3214,6 @@ void qemu_init(int argc, char **argv, char **envp)
> Error *err = NULL;
> bool have_custom_ram_size;
> BlockdevOptionsQueue bdo_queue = QSIMPLEQ_HEAD_INITIALIZER(bdo_queue);
> - QemuPluginList plugin_list = QTAILQ_HEAD_INITIALIZER(plugin_list);
>
> qemu_add_opts(&qemu_drive_opts);
> qemu_add_drive_opts(&qemu_legacy_drive_opts);
> @@ -4178,11 +4183,6 @@ void qemu_init(int argc, char **argv, char **envp)
> machine_class->default_machine_opts, 0);
> }
>
> - /* process plugin before CPUs are created, but once -smp has been parsed */
> - if (qemu_plugin_load_list(&plugin_list)) {
> - exit(1);
> - }
> -
> qemu_opts_foreach(qemu_find_opts("device"),
> default_driver_check, NULL, NULL);
> qemu_opts_foreach(qemu_find_opts("global"),