Commit 6be156bd4d for qemu.org
commit 6be156bd4d2344fa4497edb73b2ae56af104af46
Author: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
Date: Mon Jun 15 12:35:05 2026 -0700
plugins: remove qemu_plugin_id_t from qemu_plugin_vcpu_simple_cb_t
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 <manos.pitsidianakis@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com>
Link: https://lore.kernel.org/qemu-devel/20260615193526.2883349-7-pierrick.bouvier@oss.qualcomm.com
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
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);