From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Richard Henderson" <richard.henderson@linaro.org>,
"Dr. David Alan Gilbert" <dave@treblig.org>,
"Pierrick Bouvier" <pierrick.bouvier@linaro.org>,
qemu-riscv@nongnu.org, "Markus Armbruster" <armbru@redhat.com>,
qemu-s390x@nongnu.org, kvm@vger.kernel.org, qemu-ppc@nongnu.org,
"Philippe Mathieu-Daudé" <philmd@linaro.org>
Subject: [PATCH v2 27/27] monitor: Merge hmp-target.c code within hmp-cmds.c
Date: Fri, 10 Apr 2026 21:53:21 +0200 [thread overview]
Message-ID: <20260410195323.17937-28-philmd@linaro.org> (raw)
In-Reply-To: <20260410195323.17937-1-philmd@linaro.org>
hmp-target.c doesn't contain any target-specific code anymore.
Merge it within hmp-cmds.c (which is already built once).
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
MAINTAINERS | 1 -
monitor/hmp-cmds.c | 40 ++++++++++++++++++++++++
monitor/hmp-target.c | 73 --------------------------------------------
monitor/meson.build | 3 --
4 files changed, 40 insertions(+), 77 deletions(-)
delete mode 100644 monitor/hmp-target.c
diff --git a/MAINTAINERS b/MAINTAINERS
index 5dcd24a8a89..d184e25ddd4 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3414,7 +3414,6 @@ Human Monitor (HMP)
M: Dr. David Alan Gilbert <dave@treblig.org>
S: Maintained
F: monitor/monitor-internal.h
-F: monitor/hmp-target.c
F: monitor/monitor.c
F: monitor/hmp*
F: hmp.h
diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c
index e81632f5551..409a1a9c701 100644
--- a/monitor/hmp-cmds.c
+++ b/monitor/hmp-cmds.c
@@ -14,6 +14,7 @@
*/
#include "qemu/osdep.h"
+#include "qemu/base-arch-defs.h"
#include "system/address-spaces.h"
#include "system/ioport.h"
#include "exec/gdbstub.h"
@@ -22,19 +23,58 @@
#include "monitor/hmp.h"
#include "qemu/help_option.h"
#include "monitor/hmp.h"
+#include "monitor/hmp-completion.h"
#include "monitor/monitor-internal.h"
+#include "monitor/qdev.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-control.h"
#include "qapi/qapi-commands-machine.h"
#include "qapi/qapi-commands-misc.h"
+#include "block/block-hmp-cmds.h"
#include "qobject/qdict.h"
#include "qemu/cutils.h"
#include "qemu/log.h"
+#include "net/slirp.h"
+#include "system/device_tree.h"
#include "system/hw_accel.h"
#include "system/memory.h"
#include "system/system.h"
#include "disas/disas.h"
+/* Please update hmp-commands.hx when adding or changing commands */
+static HMPCommand hmp_info_cmds[] = {
+#include "hmp-commands-info.h"
+ { NULL, NULL, },
+};
+
+/* hmp_cmds and hmp_info_cmds would be sorted at runtime */
+static HMPCommand hmp_cmds[] = {
+#include "hmp-commands.h"
+ { NULL, NULL, },
+};
+
+HMPCommand *hmp_cmds_for_target(bool info_command)
+{
+ return info_command ? hmp_info_cmds : hmp_cmds;
+}
+
+static int
+compare_mon_cmd(const void *a, const void *b)
+{
+ return strcmp(((const HMPCommand *)a)->name,
+ ((const HMPCommand *)b)->name);
+}
+
+static void __attribute__((__constructor__)) sortcmdlist(void)
+{
+ qsort(hmp_cmds, ARRAY_SIZE(hmp_cmds) - 1,
+ sizeof(*hmp_cmds),
+ compare_mon_cmd);
+ qsort(hmp_info_cmds, ARRAY_SIZE(hmp_info_cmds) - 1,
+ sizeof(*hmp_info_cmds),
+ compare_mon_cmd);
+}
+
bool hmp_handle_error(Monitor *mon, Error *err)
{
if (err) {
diff --git a/monitor/hmp-target.c b/monitor/hmp-target.c
deleted file mode 100644
index 4968d511101..00000000000
--- a/monitor/hmp-target.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * QEMU monitor, target-dependent part
- *
- * Copyright (c) 2003-2004 Fabrice Bellard
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
- */
-
-#include "qemu/osdep.h"
-#include "qemu/base-arch-defs.h"
-#include "monitor-internal.h"
-#include "monitor/qdev.h"
-#include "net/slirp.h"
-#include "system/device_tree.h"
-#include "monitor/hmp.h"
-#include "monitor/hmp-completion.h"
-#include "block/block-hmp-cmds.h"
-#include "qapi/qapi-commands-control.h"
-#include "qapi/qapi-commands-misc.h"
-#include "qapi/qapi-commands-machine.h"
-
-/* Make devices configuration available for use in hmp-commands*.hx templates */
-#include CONFIG_DEVICES
-
-/* Please update hmp-commands.hx when adding or changing commands */
-static HMPCommand hmp_info_cmds[] = {
-#include "hmp-commands-info.h"
- { NULL, NULL, },
-};
-
-/* hmp_cmds and hmp_info_cmds would be sorted at runtime */
-static HMPCommand hmp_cmds[] = {
-#include "hmp-commands.h"
- { NULL, NULL, },
-};
-
-HMPCommand *hmp_cmds_for_target(bool info_command)
-{
- return info_command ? hmp_info_cmds : hmp_cmds;
-}
-
-static int
-compare_mon_cmd(const void *a, const void *b)
-{
- return strcmp(((const HMPCommand *)a)->name,
- ((const HMPCommand *)b)->name);
-}
-
-static void __attribute__((__constructor__)) sortcmdlist(void)
-{
- qsort(hmp_cmds, ARRAY_SIZE(hmp_cmds) - 1,
- sizeof(*hmp_cmds),
- compare_mon_cmd);
- qsort(hmp_info_cmds, ARRAY_SIZE(hmp_info_cmds) - 1,
- sizeof(*hmp_info_cmds),
- compare_mon_cmd);
-}
diff --git a/monitor/meson.build b/monitor/meson.build
index 585251804e4..4c58dd148c0 100644
--- a/monitor/meson.build
+++ b/monitor/meson.build
@@ -7,6 +7,3 @@ system_ss.add(files(
'qemu-config-qmp.c',
'qmp-cmds.c',
))
-
-specific_ss.add(when: 'CONFIG_SYSTEM_ONLY',
- if_true: [files('hmp-target.c')])
--
2.53.0
next prev parent reply other threads:[~2026-04-10 19:56 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-10 19:52 [PATCH v2 00/27] monitor: Remove need of per-target handlers Philippe Mathieu-Daudé
2026-04-10 19:52 ` [PATCH v2 01/27] monitor: Have MonitorDef::get_value() always return int64_t type Philippe Mathieu-Daudé
2026-04-13 2:42 ` Richard Henderson
2026-04-10 19:52 ` [PATCH v2 02/27] monitor: Remove target_long use in get_monitor_def() Philippe Mathieu-Daudé
2026-04-13 2:54 ` Richard Henderson
2026-04-10 19:52 ` [PATCH v2 03/27] monitor: Reduce target-specific methods further Philippe Mathieu-Daudé
2026-04-13 2:54 ` Richard Henderson
2026-04-10 19:52 ` [PATCH v2 04/27] monitor: Remove 'monitor/hmp-target.h' header Philippe Mathieu-Daudé
2026-04-10 19:52 ` [PATCH v2 05/27] monitor: Forward-declare the MonitorDef type Philippe Mathieu-Daudé
2026-04-13 3:10 ` Richard Henderson
2026-04-10 19:53 ` [PATCH v2 06/27] cpus: Introduce SysemuCPUOps::monitor_defs hook Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 07/27] target/i386: Replace target_monitor_defs -> SysemuCPUOps::monitor_defs Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 08/27] target/m68k: " Philippe Mathieu-Daudé
2026-04-13 3:59 ` Richard Henderson
2026-04-10 19:53 ` [PATCH v2 09/27] target/sparc: " Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 10/27] monitor: Remove target_monitor_defs() Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 11/27] cpus: Introduce SysemuCPUOps::monitor_get_register() hook Philippe Mathieu-Daudé
2026-04-13 4:09 ` Richard Henderson
2026-04-10 19:53 ` [PATCH v2 12/27] target/riscv: Register target_get_monitor_def in SysemuCPUOps Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 13/27] monitor: Remove target_get_monitor_def() Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 14/27] monitor/meson: Use SPICE with migration HMP commands Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 15/27] stubs: Rename monitor* -> qmp* files Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 16/27] monitor: Make 'info via' a generic command Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 17/27] monitor: Make Xen emulation commands generic ones Philippe Mathieu-Daudé
2026-04-10 20:03 ` David Woodhouse
2026-04-10 19:53 ` [PATCH v2 18/27] system: Expose 'arch_init.h' as 'qemu/target-arch-defs.h' Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 19/27] monitor: Introduce HMPCommand::arch_bitmask field Philippe Mathieu-Daudé
2026-04-13 4:41 ` Richard Henderson
2026-04-10 19:53 ` [PATCH v2 20/27] hw/s390x: Reduce 'monitor/monitor.h' inclusions Philippe Mathieu-Daudé
2026-04-13 8:08 ` Cornelia Huck
2026-04-10 19:53 ` [PATCH v2 21/27] monitor: Do not check TARGET_S390X to build s390x commands Philippe Mathieu-Daudé
2026-04-13 8:10 ` Cornelia Huck
2026-04-10 19:53 ` [PATCH v2 22/27] monitor: Do not check TARGET_I386 to build target/i386/ commands Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 23/27] monitor: Do not check TARGET_I386 to build 'info sgx' command Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 24/27] monitor: Do not check TARGET_I386 to build 'info sev' command Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 25/27] monitor: Do not check TARGET_I386/RISCV to build 'info mem' command Philippe Mathieu-Daudé
2026-04-10 19:53 ` [PATCH v2 26/27] monitor: Do not check multiple TARGET_* to build 'info tlb' command Philippe Mathieu-Daudé
2026-04-10 19:53 ` Philippe Mathieu-Daudé [this message]
2026-04-13 8:13 ` [PATCH v2 27/27] monitor: Merge hmp-target.c code within hmp-cmds.c Richard Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260410195323.17937-28-philmd@linaro.org \
--to=philmd@linaro.org \
--cc=armbru@redhat.com \
--cc=dave@treblig.org \
--cc=kvm@vger.kernel.org \
--cc=pierrick.bouvier@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-riscv@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox