diff --git a/tests/tcg/plugins/syscall.c b/tests/tcg/plugins/syscall.c
index ff452178b18..47aad55fc1b 100644
--- a/tests/tcg/plugins/syscall.c
+++ b/tests/tcg/plugins/syscall.c
@@ -76,12 +76,12 @@ static int64_t write_sysno = -1;
static SyscallStats *get_or_create_entry(int64_t num)
{
SyscallStats *entry =
- (SyscallStats *) g_hash_table_lookup(statistics, GINT_TO_POINTER(num));
+ (SyscallStats *) g_hash_table_lookup(statistics, &num);
if (!entry) {
entry = g_new0(SyscallStats, 1);
entry->num = num;
- g_hash_table_insert(statistics, GINT_TO_POINTER(num), (gpointer)
entry);
+ g_hash_table_insert(statistics, &entry->num, entry);
}
return entry;
@@ -232,7 +232,7 @@ QEMU_PLUGIN_EXPORT int qemu_plugin_install(qemu_plugin_id_t
id,
}
if (!do_print) {
- statistics = g_hash_table_new_full(NULL, g_direct_equal, NULL, g_free);
+ statistics = g_hash_table_new_full(g_int64_hash, g_int64_equal, NULL,
g_free);
}
if (do_log_writes) {