From 6be156bd4d2344fa4497edb73b2ae56af104af46 Mon Sep 17 00:00:00 2001 From: Pierrick Bouvier Date: Mon, 15 Jun 2026 12:35:05 -0700 Subject: [PATCH] plugins: remove qemu_plugin_id_t from qemu_plugin_vcpu_simple_cb_t MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Not used in all our plugins. Future commits will remove qemu_plugin_vcpu_simple_cb_t completely, and replace it with qemu_plugin_vcpu_udata_cb_t, so id information can be passed using userdata if needed. Reviewed-by: Manos Pitsidianakis Reviewed-by: Philippe Mathieu-Daudé Link: https://lore.kernel.org/qemu-devel/20260615193526.2883349-7-pierrick.bouvier@oss.qualcomm.com Signed-off-by: Pierrick Bouvier --- contrib/plugins/bbv.c | 2 +- contrib/plugins/execlog.c | 2 +- contrib/plugins/ips.c | 4 ++-- contrib/plugins/uftrace.c | 2 +- include/plugins/qemu-plugin.h | 4 +--- plugins/core.c | 6 ++---- tests/tcg/plugins/bb.c | 2 +- tests/tcg/plugins/insn.c | 2 +- tests/tcg/plugins/registers.c | 2 +- 9 files changed, 11 insertions(+), 15 deletions(-) diff --git a/contrib/plugins/bbv.c b/contrib/plugins/bbv.c index f2b1b258a9..72cc896a0a 100644 --- a/contrib/plugins/bbv.c +++ b/contrib/plugins/bbv.c @@ -60,7 +60,7 @@ static qemu_plugin_u64 bb_count_u64(Bb *bb) return qemu_plugin_scoreboard_u64(bb->count); } -static void vcpu_init(qemu_plugin_id_t id, unsigned int vcpu_index) +static void vcpu_init(unsigned int vcpu_index) { g_autofree gchar *vcpu_filename = NULL; Vcpu *vcpu = qemu_plugin_scoreboard_find(vcpus, vcpu_index); diff --git a/contrib/plugins/execlog.c b/contrib/plugins/execlog.c index d347ac25b6..398aa4a1f3 100644 --- a/contrib/plugins/execlog.c +++ b/contrib/plugins/execlog.c @@ -382,7 +382,7 @@ static GPtrArray *registers_init(int vcpu_index) * As we could have multiple threads trying to do this we need to * serialise the expansion under a lock. */ -static void vcpu_init(qemu_plugin_id_t id, unsigned int vcpu_index) +static void vcpu_init(unsigned int vcpu_index) { CPU *c; diff --git a/contrib/plugins/ips.c b/contrib/plugins/ips.c index 7614ae1eaf..32fd86c87a 100644 --- a/contrib/plugins/ips.c +++ b/contrib/plugins/ips.c @@ -89,7 +89,7 @@ static void update_system_time(vCPUTime *vcpu) g_mutex_unlock(&global_state_lock); } -static void vcpu_init(qemu_plugin_id_t id, unsigned int cpu_index) +static void vcpu_init(unsigned int cpu_index) { vCPUTime *vcpu = qemu_plugin_scoreboard_find(vcpus, cpu_index); vcpu->total_insn = 0; @@ -97,7 +97,7 @@ static void vcpu_init(qemu_plugin_id_t id, unsigned int cpu_index) vcpu->last_quantum_time = now_ns(); } -static void vcpu_exit(qemu_plugin_id_t id, unsigned int cpu_index) +static void vcpu_exit(unsigned int cpu_index) { vCPUTime *vcpu = qemu_plugin_scoreboard_find(vcpus, cpu_index); update_system_time(vcpu); diff --git a/contrib/plugins/uftrace.c b/contrib/plugins/uftrace.c index a071a34ea7..438cebf283 100644 --- a/contrib/plugins/uftrace.c +++ b/contrib/plugins/uftrace.c @@ -874,7 +874,7 @@ static void vcpu_tb_trans(qemu_plugin_id_t id, struct qemu_plugin_tb *tb) } } -static void vcpu_init(qemu_plugin_id_t id, unsigned int vcpu_index) +static void vcpu_init(unsigned int vcpu_index) { Cpu *cpu = qemu_plugin_scoreboard_find(score, vcpu_index); cpu->ops = arch_ops; diff --git a/include/plugins/qemu-plugin.h b/include/plugins/qemu-plugin.h index d7d972103c..8aaf404504 100644 --- a/include/plugins/qemu-plugin.h +++ b/include/plugins/qemu-plugin.h @@ -149,11 +149,9 @@ typedef void (*qemu_plugin_udata_cb_t)(void *userdata); /** * typedef qemu_plugin_vcpu_simple_cb_t - vcpu callback - * @id: the unique qemu_plugin_id_t * @vcpu_index: the current vcpu context */ -typedef void (*qemu_plugin_vcpu_simple_cb_t)(qemu_plugin_id_t id, - unsigned int vcpu_index); +typedef void (*qemu_plugin_vcpu_simple_cb_t)(unsigned int vcpu_index); /** * typedef qemu_plugin_vcpu_udata_cb_t - vcpu callback diff --git a/plugins/core.c b/plugins/core.c index b0532e8d0d..217d6608c1 100644 --- a/plugins/core.c +++ b/plugins/core.c @@ -96,8 +96,7 @@ static void plugin_vcpu_cb__simple(CPUState *cpu, enum qemu_plugin_event ev) /* iterate safely; plugins might uninstall themselves at any time */ QLIST_FOREACH_SAFE_RCU(cb, &plugin.cb_lists[ev], entry, next) { qemu_plugin_vcpu_simple_cb_t func = cb->f.vcpu_simple; - - func(cb->ctx->id, cpu->cpu_index); + func(cpu->cpu_index); } break; default: @@ -306,8 +305,7 @@ static void plugin_vcpu_for_each(gpointer k, gpointer v, gpointer udata) { struct plugin_for_each_args *args = udata; int cpu_index = *(int *)k; - - args->cb(args->ctx->id, cpu_index); + args->cb(cpu_index); } void qemu_plugin_vcpu_for_each(qemu_plugin_id_t id, diff --git a/tests/tcg/plugins/bb.c b/tests/tcg/plugins/bb.c index 8a854408aa..f29b466dab 100644 --- a/tests/tcg/plugins/bb.c +++ b/tests/tcg/plugins/bb.c @@ -56,7 +56,7 @@ static void plugin_exit(void *p) qemu_plugin_scoreboard_free(counts); } -static void vcpu_idle(qemu_plugin_id_t id, unsigned int cpu_index) +static void vcpu_idle(unsigned int cpu_index) { CPUCount *count = qemu_plugin_scoreboard_find(counts, cpu_index); g_autoptr(GString) report = g_string_new(""); diff --git a/tests/tcg/plugins/insn.c b/tests/tcg/plugins/insn.c index 12421054f6..80f7cbb296 100644 --- a/tests/tcg/plugins/insn.c +++ b/tests/tcg/plugins/insn.c @@ -84,7 +84,7 @@ static Instruction * get_insn_record(const char *disas, uint64_t vaddr, Match *m /* * Initialise a new vcpu with reading the register list */ -static void vcpu_init(qemu_plugin_id_t id, unsigned int vcpu_index) +static void vcpu_init(unsigned int vcpu_index) { g_autoptr(GArray) reg_list = qemu_plugin_get_registers(); g_autoptr(GByteArray) reg_value = g_byte_array_new(); diff --git a/tests/tcg/plugins/registers.c b/tests/tcg/plugins/registers.c index 6d627c7037..94776d887f 100644 --- a/tests/tcg/plugins/registers.c +++ b/tests/tcg/plugins/registers.c @@ -21,7 +21,7 @@ QEMU_PLUGIN_EXPORT int qemu_plugin_version = QEMU_PLUGIN_VERSION; * registers that cannot be written to, which would fail the test. * See: https://lists.gnu.org/archive/html/qemu-devel/2026-02/msg07025.html */ -static void vcpu_init_cb(qemu_plugin_id_t id, unsigned int vcpu_index) +static void vcpu_init_cb(unsigned int vcpu_index) { g_autoptr(GArray) regs = qemu_plugin_get_registers(); g_assert(regs != NULL);