diff options
author | Philippe Mathieu-Daudé <philmd@linaro.org> | 2024-07-05 09:40:34 +0100 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2024-07-05 12:34:48 +0100 |
commit | 2089a2e5bb81a258b7d30bf51a2ab7447ecc4e7f (patch) | |
tree | 30cf8ac1621c592129fb1c983e94af38eef88bad | |
parent | 3b8550c955ccd0a31667414d69a469bfdb7a56ff (diff) | |
download | qemu-2089a2e5bb81a258b7d30bf51a2ab7447ecc4e7f.zip qemu-2089a2e5bb81a258b7d30bf51a2ab7447ecc4e7f.tar.gz qemu-2089a2e5bb81a258b7d30bf51a2ab7447ecc4e7f.tar.bz2 |
plugins: Ensure vCPU index is assigned in init/exit hooks
Since vCPUs are hashed by their index, this index can't
be uninitialized (UNASSIGNED_CPU_INDEX).
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20240606124010.2460-2-philmd@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240705084047.857176-28-alex.bennee@linaro.org>
-rw-r--r-- | plugins/core.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/plugins/core.c b/plugins/core.c index 9d737d8..a864275 100644 --- a/plugins/core.c +++ b/plugins/core.c @@ -245,6 +245,7 @@ void qemu_plugin_vcpu_init_hook(CPUState *cpu) { bool success; + assert(cpu->cpu_index != UNASSIGNED_CPU_INDEX); qemu_rec_mutex_lock(&plugin.lock); plugin.num_vcpus = MAX(plugin.num_vcpus, cpu->cpu_index + 1); plugin_cpu_update__locked(&cpu->cpu_index, NULL, NULL); @@ -263,6 +264,7 @@ void qemu_plugin_vcpu_exit_hook(CPUState *cpu) plugin_vcpu_cb__simple(cpu, QEMU_PLUGIN_EV_VCPU_EXIT); + assert(cpu->cpu_index != UNASSIGNED_CPU_INDEX); qemu_rec_mutex_lock(&plugin.lock); success = g_hash_table_remove(plugin.cpu_ht, &cpu->cpu_index); g_assert(success); |