]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
softmmu: List CPU types again
authorPhilippe Mathieu-Daudé <f4bug@amsat.org>
Mon, 14 Mar 2022 14:01:08 +0000 (15:01 +0100)
committerThomas Huth <thuth@redhat.com>
Wed, 16 Mar 2022 07:43:10 +0000 (08:43 +0100)
Commit e0220bb5b2 made cpus.c target-agnostic but didn't notice
the cpu_list() function is only defined in target-specific code
in "cpu.h". Move list_cpus() declaration to "exec/cpu-common.h"
because this function is not softmmu-specific and can also be
used by user-mode, along with moving its implementation to cpu.c,
which is compiled per target.

Fixes: e0220bb5b2 ("softmmu: Build target-agnostic objects once")
Reported-by: Max Filippov <jcmvbkbc@gmail.com>
Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20220314140108.26222-1-philippe.mathieu.daude@gmail.com>
Tested-by: Max Filippov <jcmvbkbc@gmail.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
cpu.c
include/exec/cpu-common.h
include/sysemu/cpus.h
softmmu/cpus.c

diff --git a/cpu.c b/cpu.c
index d5648861490c85ddd9c22e23c76305af774d8776..be1f8b074ce460633f96f74862a02dabe4d8a365 100644 (file)
--- a/cpu.c
+++ b/cpu.c
@@ -35,6 +35,7 @@
 #include "sysemu/tcg.h"
 #include "sysemu/kvm.h"
 #include "sysemu/replay.h"
+#include "exec/cpu-common.h"
 #include "exec/exec-all.h"
 #include "exec/translate-all.h"
 #include "exec/log.h"
@@ -266,6 +267,14 @@ const char *parse_cpu_option(const char *cpu_option)
     return cpu_type;
 }
 
+void list_cpus(const char *optarg)
+{
+    /* XXX: implement xxx_cpu_list for targets that still miss it */
+#if defined(cpu_list)
+    cpu_list();
+#endif
+}
+
 #if defined(CONFIG_USER_ONLY)
 void tb_invalidate_phys_addr(target_ulong addr)
 {
index 7f7b5943c7bca7b2476d7c7ab7ce406fe59658c7..50a7d2912e0b47a209f2769ed964819882297a6c 100644 (file)
@@ -158,4 +158,6 @@ int cpu_memory_rw_debug(CPUState *cpu, vaddr addr,
 /* vl.c */
 extern int singlestep;
 
+void list_cpus(const char *optarg);
+
 #endif /* CPU_COMMON_H */
index 868f1192dee1f4d884deaf84276c5ab53c2a5616..b5c87d48b34b7dbac84ed362b16b42297c5c0549 100644 (file)
@@ -55,6 +55,4 @@ extern int smp_cores;
 extern int smp_threads;
 #endif
 
-void list_cpus(const char *optarg);
-
 #endif
index e1d84c8ccb7ed1272989e32661031ac6794e5ddd..7b75bb66d5e6a0cffd3d1aac91595cf3f05ad5ce 100644 (file)
@@ -728,14 +728,6 @@ int vm_stop_force_state(RunState state)
     }
 }
 
-void list_cpus(const char *optarg)
-{
-    /* XXX: implement xxx_cpu_list for targets that still miss it */
-#if defined(cpu_list)
-    cpu_list();
-#endif
-}
-
 void qmp_memsave(int64_t addr, int64_t size, const char *filename,
                  bool has_cpu, int64_t cpu_index, Error **errp)
 {