From: Kevin Wolf Date: Mon, 5 Oct 2020 15:58:42 +0000 (+0200) Subject: monitor: Add Monitor parameter to monitor_set_cpu() X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=dcba65f824817596e817a43f83ef83bac9099e76;p=qmiga%2Fqemu.git monitor: Add Monitor parameter to monitor_set_cpu() Most callers actually don't have to rely on cur_mon, but already know for which monitor they call monitor_set_cpu(). Signed-off-by: Kevin Wolf Reviewed-by: Eric Blake Message-Id: <20201005155855.256490-2-kwolf@redhat.com> Reviewed-by: Markus Armbruster Reviewed-by: Stefan Hajnoczi Signed-off-by: Markus Armbruster --- diff --git a/include/monitor/monitor.h b/include/monitor/monitor.h index c0170773d4..04f472ac4f 100644 --- a/include/monitor/monitor.h +++ b/include/monitor/monitor.h @@ -33,7 +33,7 @@ int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap) GCC_FMT_ATTR(2, 0); int monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3); void monitor_flush(Monitor *mon); -int monitor_set_cpu(int cpu_index); +int monitor_set_cpu(Monitor *mon, int cpu_index); int monitor_get_cpu_index(void); void monitor_read_command(MonitorHMP *mon, int show_prompt); diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c index dc0de39219..0c0a03f824 100644 --- a/monitor/hmp-cmds.c +++ b/monitor/hmp-cmds.c @@ -998,7 +998,7 @@ void hmp_cpu(Monitor *mon, const QDict *qdict) /* XXX: drop the monitor_set_cpu() usage when all HMP commands that use it are converted to the QAPI */ cpu_index = qdict_get_int(qdict, "index"); - if (monitor_set_cpu(cpu_index) < 0) { + if (monitor_set_cpu(mon, cpu_index) < 0) { monitor_printf(mon, "invalid CPU index\n"); } } diff --git a/monitor/misc.c b/monitor/misc.c index 6e0da0cb96..25b42593cc 100644 --- a/monitor/misc.c +++ b/monitor/misc.c @@ -129,7 +129,7 @@ char *qmp_human_monitor_command(const char *command_line, bool has_cpu_index, cur_mon = &hmp.common; if (has_cpu_index) { - int ret = monitor_set_cpu(cpu_index); + int ret = monitor_set_cpu(&hmp.common, cpu_index); if (ret < 0) { cur_mon = old_mon; error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "cpu-index", @@ -255,7 +255,7 @@ static void monitor_init_qmp_commands(void) } /* Set the current CPU defined by the user. Callers must hold BQL. */ -int monitor_set_cpu(int cpu_index) +int monitor_set_cpu(Monitor *mon, int cpu_index) { CPUState *cpu; @@ -263,8 +263,8 @@ int monitor_set_cpu(int cpu_index) if (cpu == NULL) { return -1; } - g_free(cur_mon->mon_cpu_path); - cur_mon->mon_cpu_path = object_get_canonical_path(OBJECT(cpu)); + g_free(mon->mon_cpu_path); + mon->mon_cpu_path = object_get_canonical_path(OBJECT(cpu)); return 0; } @@ -285,7 +285,7 @@ static CPUState *mon_get_cpu_sync(bool synchronize) if (!first_cpu) { return NULL; } - monitor_set_cpu(first_cpu->cpu_index); + monitor_set_cpu(cur_mon, first_cpu->cpu_index); cpu = first_cpu; } assert(cpu != NULL);