On 6/6/24 05:40, Philippe Mathieu-Daudé wrote:
> 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>
> ---
> plugins/core.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/plugins/core.c b/plugins/core.c
> index badede28cf..d339b3db4d 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);
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>