qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org
Subject: [PULL 027/126] accel/tcg: Restrict 'qapi-commands-machine.h' to system emulation
Date: Mon, 27 Feb 2023 15:00:34 +0100	[thread overview]
Message-ID: <20230227140213.35084-18-philmd@linaro.org> (raw)
In-Reply-To: <20230227140213.35084-1-philmd@linaro.org>

Since commit a0e61807a3 ("qapi: Remove QMP events and commands from
user-mode builds") we don't generate the "qapi-commands-machine.h"
header in a user-emulation-only build.

Rename 'hmp.c' as 'monitor.c' and move the QMP functions from
cpu-exec.c (which is always compiled) to monitor.c (which is only
compiled when system-emulation is selected).

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20221219170806.60580-4-philmd@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 accel/tcg/cpu-exec.c  |  88 +----------------------------------
 accel/tcg/hmp.c       |  14 ------
 accel/tcg/internal.h  |   3 ++
 accel/tcg/meson.build |   2 +-
 accel/tcg/monitor.c   | 106 ++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 112 insertions(+), 101 deletions(-)
 delete mode 100644 accel/tcg/hmp.c
 create mode 100644 accel/tcg/monitor.c

diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-exec.c
index 29b9bdac38..5c9e30a803 100644
--- a/accel/tcg/cpu-exec.c
+++ b/accel/tcg/cpu-exec.c
@@ -20,7 +20,6 @@
 #include "qemu/osdep.h"
 #include "qemu/qemu-print.h"
 #include "qapi/error.h"
-#include "qapi/qapi-commands-machine.h"
 #include "qapi/type-helpers.h"
 #include "hw/core/tcg-cpu-ops.h"
 #include "trace.h"
@@ -63,8 +62,8 @@ typedef struct SyncClocks {
 #define MAX_DELAY_PRINT_RATE 2000000000LL
 #define MAX_NB_PRINTS 100
 
-static int64_t max_delay;
-static int64_t max_advance;
+int64_t max_delay;
+int64_t max_advance;
 
 static void align_clocks(SyncClocks *sc, CPUState *cpu)
 {
@@ -1071,86 +1070,3 @@ void tcg_exec_unrealizefn(CPUState *cpu)
     tlb_destroy(cpu);
     g_free_rcu(cpu->tb_jmp_cache, rcu);
 }
-
-#ifndef CONFIG_USER_ONLY
-
-static void dump_drift_info(GString *buf)
-{
-    if (!icount_enabled()) {
-        return;
-    }
-
-    g_string_append_printf(buf, "Host - Guest clock  %"PRIi64" ms\n",
-                           (cpu_get_clock() - icount_get()) / SCALE_MS);
-    if (icount_align_option) {
-        g_string_append_printf(buf, "Max guest delay     %"PRIi64" ms\n",
-                               -max_delay / SCALE_MS);
-        g_string_append_printf(buf, "Max guest advance   %"PRIi64" ms\n",
-                               max_advance / SCALE_MS);
-    } else {
-        g_string_append_printf(buf, "Max guest delay     NA\n");
-        g_string_append_printf(buf, "Max guest advance   NA\n");
-    }
-}
-
-HumanReadableText *qmp_x_query_jit(Error **errp)
-{
-    g_autoptr(GString) buf = g_string_new("");
-
-    if (!tcg_enabled()) {
-        error_setg(errp, "JIT information is only available with accel=tcg");
-        return NULL;
-    }
-
-    dump_exec_info(buf);
-    dump_drift_info(buf);
-
-    return human_readable_text_from_str(buf);
-}
-
-HumanReadableText *qmp_x_query_opcount(Error **errp)
-{
-    g_autoptr(GString) buf = g_string_new("");
-
-    if (!tcg_enabled()) {
-        error_setg(errp, "Opcode count information is only available with accel=tcg");
-        return NULL;
-    }
-
-    tcg_dump_op_count(buf);
-
-    return human_readable_text_from_str(buf);
-}
-
-#ifdef CONFIG_PROFILER
-
-int64_t dev_time;
-
-HumanReadableText *qmp_x_query_profile(Error **errp)
-{
-    g_autoptr(GString) buf = g_string_new("");
-    static int64_t last_cpu_exec_time;
-    int64_t cpu_exec_time;
-    int64_t delta;
-
-    cpu_exec_time = tcg_cpu_exec_time();
-    delta = cpu_exec_time - last_cpu_exec_time;
-
-    g_string_append_printf(buf, "async time  %" PRId64 " (%0.3f)\n",
-                           dev_time, dev_time / (double)NANOSECONDS_PER_SECOND);
-    g_string_append_printf(buf, "qemu time   %" PRId64 " (%0.3f)\n",
-                           delta, delta / (double)NANOSECONDS_PER_SECOND);
-    last_cpu_exec_time = cpu_exec_time;
-    dev_time = 0;
-
-    return human_readable_text_from_str(buf);
-}
-#else
-HumanReadableText *qmp_x_query_profile(Error **errp)
-{
-    error_setg(errp, "Internal profiler not compiled");
-    return NULL;
-}
-#endif
-
-#endif /* !CONFIG_USER_ONLY */
diff --git a/accel/tcg/hmp.c b/accel/tcg/hmp.c
deleted file mode 100644
index bb67941420..0000000000
--- a/accel/tcg/hmp.c
+++ /dev/null
@@ -1,14 +0,0 @@
-#include "qemu/osdep.h"
-#include "qemu/error-report.h"
-#include "qapi/error.h"
-#include "qapi/qapi-commands-machine.h"
-#include "exec/exec-all.h"
-#include "monitor/monitor.h"
-
-static void hmp_tcg_register(void)
-{
-    monitor_register_hmp_info_hrt("jit", qmp_x_query_jit);
-    monitor_register_hmp_info_hrt("opcount", qmp_x_query_opcount);
-}
-
-type_init(hmp_tcg_register);
diff --git a/accel/tcg/internal.h b/accel/tcg/internal.h
index 6edff16fb0..130d7fd564 100644
--- a/accel/tcg/internal.h
+++ b/accel/tcg/internal.h
@@ -64,4 +64,7 @@ static inline target_ulong log_pc(CPUState *cpu, const TranslationBlock *tb)
 #endif
 }
 
+extern int64_t max_delay;
+extern int64_t max_advance;
+
 #endif /* ACCEL_TCG_INTERNAL_H */
diff --git a/accel/tcg/meson.build b/accel/tcg/meson.build
index 77740b1a0d..aeb20a6ef0 100644
--- a/accel/tcg/meson.build
+++ b/accel/tcg/meson.build
@@ -18,7 +18,7 @@ specific_ss.add_all(when: 'CONFIG_TCG', if_true: tcg_ss)
 
 specific_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: files(
   'cputlb.c',
-  'hmp.c',
+  'monitor.c',
 ))
 
 tcg_module_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: files(
diff --git a/accel/tcg/monitor.c b/accel/tcg/monitor.c
new file mode 100644
index 0000000000..1450e160e9
--- /dev/null
+++ b/accel/tcg/monitor.c
@@ -0,0 +1,106 @@
+/*
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ *
+ *  QEMU TCG monitor
+ *
+ *  Copyright (c) 2003-2005 Fabrice Bellard
+ */
+
+#include "qemu/osdep.h"
+#include "qapi/error.h"
+#include "qapi/type-helpers.h"
+#include "qapi/qapi-commands-machine.h"
+#include "monitor/monitor.h"
+#include "sysemu/cpus.h"
+#include "sysemu/cpu-timers.h"
+#include "sysemu/tcg.h"
+#include "internal.h"
+
+
+static void dump_drift_info(GString *buf)
+{
+    if (!icount_enabled()) {
+        return;
+    }
+
+    g_string_append_printf(buf, "Host - Guest clock  %"PRIi64" ms\n",
+                           (cpu_get_clock() - icount_get()) / SCALE_MS);
+    if (icount_align_option) {
+        g_string_append_printf(buf, "Max guest delay     %"PRIi64" ms\n",
+                               -max_delay / SCALE_MS);
+        g_string_append_printf(buf, "Max guest advance   %"PRIi64" ms\n",
+                               max_advance / SCALE_MS);
+    } else {
+        g_string_append_printf(buf, "Max guest delay     NA\n");
+        g_string_append_printf(buf, "Max guest advance   NA\n");
+    }
+}
+
+HumanReadableText *qmp_x_query_jit(Error **errp)
+{
+    g_autoptr(GString) buf = g_string_new("");
+
+    if (!tcg_enabled()) {
+        error_setg(errp, "JIT information is only available with accel=tcg");
+        return NULL;
+    }
+
+    dump_exec_info(buf);
+    dump_drift_info(buf);
+
+    return human_readable_text_from_str(buf);
+}
+
+HumanReadableText *qmp_x_query_opcount(Error **errp)
+{
+    g_autoptr(GString) buf = g_string_new("");
+
+    if (!tcg_enabled()) {
+        error_setg(errp,
+                   "Opcode count information is only available with accel=tcg");
+        return NULL;
+    }
+
+    tcg_dump_op_count(buf);
+
+    return human_readable_text_from_str(buf);
+}
+
+#ifdef CONFIG_PROFILER
+
+int64_t dev_time;
+
+HumanReadableText *qmp_x_query_profile(Error **errp)
+{
+    g_autoptr(GString) buf = g_string_new("");
+    static int64_t last_cpu_exec_time;
+    int64_t cpu_exec_time;
+    int64_t delta;
+
+    cpu_exec_time = tcg_cpu_exec_time();
+    delta = cpu_exec_time - last_cpu_exec_time;
+
+    g_string_append_printf(buf, "async time  %" PRId64 " (%0.3f)\n",
+                           dev_time, dev_time / (double)NANOSECONDS_PER_SECOND);
+    g_string_append_printf(buf, "qemu time   %" PRId64 " (%0.3f)\n",
+                           delta, delta / (double)NANOSECONDS_PER_SECOND);
+    last_cpu_exec_time = cpu_exec_time;
+    dev_time = 0;
+
+    return human_readable_text_from_str(buf);
+}
+#else
+HumanReadableText *qmp_x_query_profile(Error **errp)
+{
+    error_setg(errp, "Internal profiler not compiled");
+    return NULL;
+}
+#endif
+
+static void hmp_tcg_register(void)
+{
+    monitor_register_hmp_info_hrt("jit", qmp_x_query_jit);
+    monitor_register_hmp_info_hrt("opcount", qmp_x_query_opcount);
+}
+
+type_init(hmp_tcg_register);
-- 
2.38.1



  parent reply	other threads:[~2023-02-27 14:08 UTC|newest]

Thread overview: 124+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-27 14:00 [RESEND PULL 000/126] Buildsys / QOM / QDev / UI patches for 2023-02-27 Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 011/126] target/hppa: Extract system helpers to sys_helper.c Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 012/126] target/alpha: Remove obsolete STATUS document Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 013/126] target/loongarch/cpu: Remove unused "sysbus.h" header Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 014/126] target/loongarch/cpu: Restrict "memory.h" header to sysemu Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 015/126] target/ppc/internal: Restrict MMU declarations " Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 016/126] target/ppc/kvm: Remove unused "sysbus.h" header Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 017/126] target/ppc: Fix warning with clang-15 Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 018/126] target/riscv/cpu: Move Floating-Point fields closer Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 019/126] target/sparc/sysemu: Remove pointless CONFIG_USER_ONLY guard Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 020/126] target/xtensa/cpu: Include missing "memory.h" header Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 021/126] target/tricore: Remove unused fields from CPUTriCoreState Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 022/126] qom/object_interfaces: Fix QAPI headers included Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 023/126] trace: Do not try to include QMP commands in user emulation binaries Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 024/126] exec: Remove unused 'qemu/timer.h' timer Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 025/126] tcg: Silent -Wmissing-field-initializers warning Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 026/126] tcg/tcg-op-gvec: Remove unused "qemu/main-loop.h" header Philippe Mathieu-Daudé
2023-02-27 14:00 ` Philippe Mathieu-Daudé [this message]
2023-02-27 14:00 ` [PULL 028/126] accel/xen: Remove dead code Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 029/126] accel/kvm: Silent -Wmissing-field-initializers warning Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 030/126] sysemu/kvm: Remove CONFIG_USER_ONLY guard Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 031/126] replay: Extract core API to 'exec/replay-core.h' Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 032/126] tests/unit: Restrict machine-smp.c test to system emulation Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 033/126] softmmu: Silent -Wmissing-field-initializers warning Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 034/126] softmmu: Extract watchpoint API from physmem.c Philippe Mathieu-Daudé
2023-03-23  8:54   ` Philippe Mathieu-Daudé
2023-03-23  9:00     ` David Hildenbrand
2023-02-27 14:00 ` [PULL 035/126] qemu/typedefs: Sort in case-insensitive alphabetical order (again) Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 036/126] hw/nubus/nubus-device: Fix memory leak in nubus_device_realize Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 037/126] hw/qdev: Constify DeviceState* argument of qdev_get_parent_bus() Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 038/126] hw/cpu: Extend CPUState::cluster_index documentation Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 039/126] hw/i386/x86: Reduce init_topo_info() scope Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 040/126] hw/i386/ich9: Rename Q35_MASK to ICH9_MASK Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 041/126] hw/isa/lpc_ich9: Unexport PIRQ functions Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 042/126] hw/isa/lpc_ich9: Eliminate ICH9LPCState::isa_bus Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 043/126] hw/i2c/smbus_ich9: Move ich9_smb_set_irq() in front of ich9_smbus_realize() Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 044/126] hw/i2c/smbus_ich9: Inline ich9_smb_init() and remove it Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 045/126] hw/i386/pc_q35: Allow for setting properties before realizing TYPE_ICH9_LPC_DEVICE Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 046/126] hw/isa/lpc_ich9: Connect PM stuff to LPC internally Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 047/126] hw/isa/lpc_ich9: Remove redundant ich9_lpc_reset() invocation Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 048/126] hw/i386/ich9: Remove redundant GSI_NUM_PINS Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 049/126] hw: Move ioapic*.h to intc/ Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 050/126] hw/i386/ich9: Clean up includes Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 051/126] hw: Move ich9.h to southbridge/ Philippe Mathieu-Daudé
2023-02-27 14:00 ` [PULL 052/126] hw/pci: Fix a typo Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 053/126] hw/intc/i8259: Document i8259_init() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 054/126] hw/isa/i82378: Rename output IRQ as 'cpu_intr' Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 055/126] hw/isa/i82378: Remove intermediate IRQ forwarder Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 056/126] hw/isa/vt82c686: " Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 057/126] hw/sparc64/sun4u: Keep reference to ISA input IRQs in EbusState Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 058/126] hw/isa: Remove empty ISADeviceClass structure Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 059/126] hw/isa: Reorder to separate ISABus* vs ISADevice* functions Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 060/126] hw/isa: Un-inline isa_bus_from_device() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 061/126] hw/isa: Rename isa_bus_irqs() -> isa_bus_register_input_irqs() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 062/126] hw/isa: Use isa_address_space_io() to reduce access on global 'isabus' Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 063/126] hw/isa: Rename isa_get_dma() -> isa_bus_get_dma() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 064/126] hw/isa: Factor isa_bus_get_irq() out of isa_get_irq() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 065/126] hw: Replace isa_get_irq() by isa_bus_get_irq() when ISABus is available Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 066/126] hw/rtc/mc146818rtc: Rename RTCState -> MC146818RtcState Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 067/126] hw/rtc/mc146818rtc: Pass MC146818RtcState instead of ISADevice argument Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 068/126] hw/rtc: Rename rtc_[get|set]_memory -> mc146818rtc_[get|set]_cmos_data Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 069/126] hw/timer/hpet: Include missing 'hw/qdev-properties.h' header Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 070/126] hw/audio/hda-codec: Avoid forward-declaring HDAAudioState Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 071/126] hw/audio/es1370: Avoid forward-declaring ES1370State Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 072/126] hw/audio/es1370: Replace container_of() by ES1370() QOM cast macro Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 073/126] hw/audio/ac97: Replace container_of() by AC97() " Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 074/126] hw/audio/ac97: Split off some definitions to a header Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 075/126] hw/usb/dev-smartcard-reader: Avoid forward-declaring CCIDBus Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 076/126] hw/usb/u2f: Declare QOM macros using OBJECT_DECLARE_TYPE() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 077/126] hw/usb/ohci: Include missing 'sysbus.h' header Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 078/126] hw/usb/ohci: Use OHCIState type definition Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 079/126] hw/usb/ohci: Code style fix comments Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 080/126] hw/usb/ohci: Code style fix white space errors Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 081/126] hw/usb/ohci: Code style fix missing braces and extra parenthesis Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 082/126] hw/usb/ohci: Move a function next to where it is used Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 083/126] hw/usb/ohci: Add trace points for register access Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 084/126] hw/usb/ohci: Fix typo Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 085/126] hw/usb/uhci: Declare QOM macros using OBJECT_DECLARE_TYPE() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 086/126] hw/usb/uhci: Replace container_of() by UHCI_GET_CLASS() QOM macro Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 087/126] hw/usb/xhci-nec: Declare QOM macros for NEC_XHCI Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 088/126] hw/usb/xhci-nec: Replace container_of() by NEC_XHCI() QOM cast macro Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 089/126] hw/display/sm501: Embed OHCI QOM child in chipset Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 090/126] hw/display/sm501: Alias 'dma-offset' QOM property in chipset object Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 091/126] hw/display/sm501: Implement more 2D raster operations Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 092/126] hw/display/sm501: Add fallbacks to pixman routines Philippe Mathieu-Daudé
2023-04-04 17:44   ` Peter Maydell
2023-04-04 19:25     ` BALATON Zoltan
2023-04-04 20:12       ` Peter Maydell
2023-02-27 14:01 ` [PULL 093/126] hw/ppc/sam460ex: Correctly set MAL properties Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 094/126] block/vvfat: Remove pointless check of NDEBUG Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 095/126] scripts/checkpatch.pl: Do not allow assert(0) Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 096/126] MAINTAINERS: Mark IDE and Floppy as "Odd Fixes" Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 097/126] hw/i386/xen: Remove unused 'hw/ide.h' include from header Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 098/126] hw/ide/ahci: Trace ncq write command as write instead of read Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 099/126] hw/ide/mmio: Use CamelCase for MMIO_IDE state name Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 100/126] hw/ide/mmio: Extract TYPE_MMIO_IDE declarations to 'hw/ide/mmio.h' Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 101/126] hw/ide/isa: Extract TYPE_ISA_IDE declarations to 'hw/ide/isa.h' Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 102/126] hw/ide/isa: Remove intermediate ISAIDEState::irq variable Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 103/126] hw/ide/atapi: Restrict 'scsi/constants.h' inclusion Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 104/126] hw/ide: Remove unused 'qapi/qapi-types-run-state.h' Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 105/126] hw/ide: Include 'exec/ioport.h' instead of 'hw/isa/isa.h' Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 106/126] hw/ide: Un-inline ide_set_irq() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 107/126] hw/ide: Rename ide_set_irq() -> ide_bus_set_irq() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 108/126] hw/ide: Rename ide_create_drive() -> ide_bus_create_drive() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 109/126] hw/ide: Rename ide_register_restart_cb -> ide_bus_register_restart_cb Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 110/126] hw/ide: Rename ide_exec_cmd() -> ide_bus_exec_cmd() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 111/126] hw/ide: Rename ide_init2() -> ide_bus_init_output_irq() Philippe Mathieu-Daudé
2023-02-27 14:01 ` [PULL 112/126] hw/ide: Rename idebus_active_if() -> ide_bus_active_if() Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 113/126] hw/ide: Declare ide_get_[geometry/bios_chs_trans] in 'hw/ide/internal.h' Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 114/126] hw/ide/ioport: Remove unnecessary includes Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 115/126] hw/ide/pci: Unexport bmdma_active_if() Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 116/126] hw/ide/piix: Remove unused includes Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 117/126] hw/ide/piix: Pass Error* to pci_piix_init_ports() for better error msg Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 118/126] hw/ide/piix: Refactor pci_piix_init_ports as pci_piix_init_bus per bus Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 119/126] hw/ide/via: Replace magic 2 value by ARRAY_SIZE / MAX_IDE_DEVS Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 120/126] hw/ide/pci: Add PCIIDEState::isa_irq[] Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 121/126] dump: Replace tswapN() -> cpu_to_dumpN() Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 122/126] dump: Replace TARGET_PAGE_SIZE -> qemu_target_page_size() Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 123/126] dump: Clean included headers Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 124/126] dump: Simplify compiling win_dump.o by introducing win_dump_available() Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 125/126] dump: Add create_win_dump() stub for non-x86 targets Philippe Mathieu-Daudé
2023-02-27 14:02 ` [PULL 126/126] ui/cocoa: user friendly characters for release mouse Philippe Mathieu-Daudé
2023-02-27 18:22 ` [RESEND PULL 000/126] Buildsys / QOM / QDev / UI patches for 2023-02-27 Peter Maydell
2023-02-27 21:26   ` Philippe Mathieu-Daudé

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=20230227140213.35084-18-philmd@linaro.org \
    --to=philmd@linaro.org \
    --cc=qemu-devel@nongnu.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;
as well as URLs for NNTP newsgroup(s).