diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2024-08-20 15:49:11 +0100 |
---|---|---|
committer | Fabiano Rosas <farosas@suse.de> | 2024-09-03 16:24:34 -0300 |
commit | 78a053bc1b28b153a4a5d9743cc554626bde2624 (patch) | |
tree | 08b5f82063e1a6d970c754d295801872ba82b36f | |
parent | 6ed8c950b43369a3b81a4dd9ec507bc8ba432b33 (diff) | |
download | qemu-78a053bc1b28b153a4a5d9743cc554626bde2624.zip qemu-78a053bc1b28b153a4a5d9743cc554626bde2624.tar.gz qemu-78a053bc1b28b153a4a5d9743cc554626bde2624.tar.bz2 |
tests/qtest/migration-test: Don't strdup in get_dirty_rate()
We g_strdup() the "status" string we get out of the qdict in
get_dirty_rate(), but we never free it. Since we only use this
string while the dictionary is still valid, we don't need to strdup
at all; drop the unnecessary call to avoid this leak:
Direct leak of 18 byte(s) in 2 object(s) allocated from:
#0 0x564b3e01913e in malloc (/mnt/nvmedisk/linaro/qemu-from-laptop/qemu/build/asan/tests/qtest/migration-test+0x22f13e) (BuildId: d6403a811332fcc846f93c45e23abfd06d1e67c4)
#1 0x7f2f278ff738 in g_malloc debian/build/deb/../../../glib/gmem.c:128:13
#2 0x7f2f27914583 in g_strdup debian/build/deb/../../../glib/gstrfuncs.c:361:17
#3 0x564b3e14bb5b in get_dirty_rate tests/qtest/migration-test.c:3447:14
#4 0x564b3e138e00 in test_vcpu_dirty_limit tests/qtest/migration-test.c:3565:16
#5 0x564b3e14f417 in migration_test_wrapper tests/qtest/migration-helpers.c:456:5
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
-rw-r--r-- | tests/qtest/migration-test.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c index f0f0335..3818595 100644 --- a/tests/qtest/migration-test.c +++ b/tests/qtest/migration-test.c @@ -3355,7 +3355,7 @@ static void wait_for_calc_dirtyrate_complete(QTestState *who, static int64_t get_dirty_rate(QTestState *who) { QDict *rsp_return; - gchar *status; + const char *status; QList *rates; const QListEntry *entry; QDict *rate; @@ -3364,7 +3364,7 @@ static int64_t get_dirty_rate(QTestState *who) rsp_return = query_dirty_rate(who); g_assert(rsp_return); - status = g_strdup(qdict_get_str(rsp_return, "status")); + status = qdict_get_str(rsp_return, "status"); g_assert(status); g_assert_cmpstr(status, ==, "measured"); |