Most callers actually don't have to rely on cur_mon, but already know for which monitor they call monitor_get_cpu_index().
Signed-off-by: Kevin Wolf <kw...@redhat.com> --- include/monitor/monitor.h | 2 +- hw/core/machine-hmp-cmds.c | 2 +- monitor/hmp-cmds.c | 2 +- monitor/misc.c | 20 ++++++++++---------- softmmu/cpus.c | 2 +- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/include/monitor/monitor.h b/include/monitor/monitor.h index 0dcaefd4f9..a64502fbb2 100644 --- a/include/monitor/monitor.h +++ b/include/monitor/monitor.h @@ -34,7 +34,7 @@ int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap) int monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3); void monitor_flush(Monitor *mon); int monitor_set_cpu(Monitor *mon, int cpu_index); -int monitor_get_cpu_index(void); +int monitor_get_cpu_index(Monitor *mon); void monitor_read_command(MonitorHMP *mon, int show_prompt); int monitor_read_password(MonitorHMP *mon, ReadLineFunc *readline_func, diff --git a/hw/core/machine-hmp-cmds.c b/hw/core/machine-hmp-cmds.c index 39999c47c5..da7d2e27b6 100644 --- a/hw/core/machine-hmp-cmds.c +++ b/hw/core/machine-hmp-cmds.c @@ -34,7 +34,7 @@ void hmp_info_cpus(Monitor *mon, const QDict *qdict) for (cpu = cpu_list; cpu; cpu = cpu->next) { int active = ' '; - if (cpu->value->cpu_index == monitor_get_cpu_index()) { + if (cpu->value->cpu_index == monitor_get_cpu_index(mon)) { active = '*'; } diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c index f608b5b27b..1e5e611ed9 100644 --- a/monitor/hmp-cmds.c +++ b/monitor/hmp-cmds.c @@ -1007,7 +1007,7 @@ void hmp_memsave(Monitor *mon, const QDict *qdict) const char *filename = qdict_get_str(qdict, "filename"); uint64_t addr = qdict_get_int(qdict, "val"); Error *err = NULL; - int cpu_index = monitor_get_cpu_index(); + int cpu_index = monitor_get_cpu_index(mon); if (cpu_index < 0) { monitor_printf(mon, "No CPU available\n"); diff --git a/monitor/misc.c b/monitor/misc.c index b4f779b8d3..972726061c 100644 --- a/monitor/misc.c +++ b/monitor/misc.c @@ -269,23 +269,23 @@ int monitor_set_cpu(Monitor *mon, int cpu_index) } /* Callers must hold BQL. */ -static CPUState *mon_get_cpu_sync(bool synchronize) +static CPUState *mon_get_cpu_sync(Monitor *mon, bool synchronize) { CPUState *cpu = NULL; - if (cur_mon->mon_cpu_path) { - cpu = (CPUState *) object_resolve_path_type(cur_mon->mon_cpu_path, + if (mon->mon_cpu_path) { + cpu = (CPUState *) object_resolve_path_type(mon->mon_cpu_path, TYPE_CPU, NULL); if (!cpu) { - g_free(cur_mon->mon_cpu_path); - cur_mon->mon_cpu_path = NULL; + g_free(mon->mon_cpu_path); + mon->mon_cpu_path = NULL; } } - if (!cur_mon->mon_cpu_path) { + if (!mon->mon_cpu_path) { if (!first_cpu) { return NULL; } - monitor_set_cpu(cur_mon, first_cpu->cpu_index); + monitor_set_cpu(mon, first_cpu->cpu_index); cpu = first_cpu; } assert(cpu != NULL); @@ -297,7 +297,7 @@ static CPUState *mon_get_cpu_sync(bool synchronize) CPUState *mon_get_cpu(void) { - return mon_get_cpu_sync(true); + return mon_get_cpu_sync(cur_mon, true); } CPUArchState *mon_get_cpu_env(void) @@ -307,9 +307,9 @@ CPUArchState *mon_get_cpu_env(void) return cs ? cs->env_ptr : NULL; } -int monitor_get_cpu_index(void) +int monitor_get_cpu_index(Monitor *mon) { - CPUState *cs = mon_get_cpu_sync(false); + CPUState *cs = mon_get_cpu_sync(mon, false); return cs ? cs->cpu_index : UNASSIGNED_CPU_INDEX; } diff --git a/softmmu/cpus.c b/softmmu/cpus.c index e3b98065c9..ae643447e9 100644 --- a/softmmu/cpus.c +++ b/softmmu/cpus.c @@ -2224,7 +2224,7 @@ exit: void qmp_inject_nmi(Error **errp) { - nmi_monitor_handle(monitor_get_cpu_index(), errp); + nmi_monitor_handle(monitor_get_cpu_index(cur_mon), errp); } void dump_drift_info(void) -- 2.25.4