From: Alex Bradbury Date: Tue, 2 Dec 2025 23:05:54 +0000 (+0000) Subject: contrib/plugins/hotblocks: Correctly free sorted counts list X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=90fabd5ddace6ffa5a62a5186201fd071b4e2b74;p=thirdparty%2Fqemu.git contrib/plugins/hotblocks: Correctly free sorted counts list g_list_free should be passed the head of the list. Signed-off-by: Alex Bradbury Reviewed-by: Manos Pitsidianakis Reviewed-by: Pierrick Bouvier Link: https://lore.kernel.org/qemu-devel/cf5a00136738b981a12270b76572e8d502daf208.1753857212.git.asb@igalia.com Signed-off-by: Pierrick Bouvier --- diff --git a/contrib/plugins/hotblocks.c b/contrib/plugins/hotblocks.c index 98404b6885..d3dd23ed9f 100644 --- a/contrib/plugins/hotblocks.c +++ b/contrib/plugins/hotblocks.c @@ -73,15 +73,16 @@ static void exec_count_free(gpointer key, gpointer value, gpointer user_data) static void plugin_exit(qemu_plugin_id_t id, void *p) { g_autoptr(GString) report = g_string_new("collected "); - GList *counts, *it; + GList *counts, *sorted_counts, *it; int i; g_string_append_printf(report, "%d entries in the hash table\n", g_hash_table_size(hotblocks)); counts = g_hash_table_get_values(hotblocks); - it = g_list_sort_with_data(counts, cmp_exec_count, NULL); + sorted_counts = g_list_sort_with_data(counts, cmp_exec_count, NULL); - if (it) { + if (sorted_counts) { + it = sorted_counts; g_string_append_printf(report, "pc, tcount, icount, ecount\n"); for (i = 0; i < limit && it->next; i++, it = it->next) { @@ -94,7 +95,7 @@ static void plugin_exit(qemu_plugin_id_t id, void *p) qemu_plugin_scoreboard_u64(rec->exec_count))); } - g_list_free(it); + g_list_free(sorted_counts); } qemu_plugin_outs(report->str);