[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH for-9.2 7/9] tests/qtest/migration-helpers: Don't dup argumen
From: |
Fabiano Rosas |
Subject: |
Re: [PATCH for-9.2 7/9] tests/qtest/migration-helpers: Don't dup argument to qdict_put_str() |
Date: |
Thu, 22 Aug 2024 09:26:56 -0300 |
Peter Maydell <peter.maydell@linaro.org> writes:
> In migrate_set_ports() we call qdict_put_str() with a value string
> which we g_strdup(). However qdict_put_str() takes a copy of the
> value string, it doesn't take ownership of it, so the g_strdup()
> only results in a leak:
>
> Direct leak of 6 byte(s) in 1 object(s) allocated from:
> #0 0x56298023713e in malloc
> (/mnt/nvmedisk/linaro/qemu-from-laptop/qemu/build/asan/tests/qtest/migration-test+0x22f13e)
> (BuildId: b2b9174a5a54707a7f76bca51cdc95d2aa08bac1)
> #1 0x7fba0ad39738 in g_malloc debian/build/deb/../../../glib/gmem.c:128:13
> #2 0x7fba0ad4e583 in g_strdup
> debian/build/deb/../../../glib/gstrfuncs.c:361:17
> #3 0x56298036b16e in migrate_set_ports
> tests/qtest/migration-helpers.c:145:49
> #4 0x56298036ad1c in migrate_qmp tests/qtest/migration-helpers.c:228:9
> #5 0x56298035b3dd in test_precopy_common
> tests/qtest/migration-test.c:1820:5
> #6 0x5629803549dc in test_multifd_tcp_channels_none
> tests/qtest/migration-test.c:3077:5
> #7 0x56298036d427 in migration_test_wrapper
> tests/qtest/migration-helpers.c:456:5
>
> Drop the unnecessary g_strdup() call.
>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> tests/qtest/migration-helpers.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tests/qtest/migration-helpers.c b/tests/qtest/migration-helpers.c
> index 7cbb9831e76..a43d180c807 100644
> --- a/tests/qtest/migration-helpers.c
> +++ b/tests/qtest/migration-helpers.c
> @@ -142,7 +142,7 @@ static void migrate_set_ports(QTestState *to, QList
> *channel_list)
> qdict_haskey(addr, "port") &&
> (strcmp(qdict_get_str(addrdict, "port"), "0") == 0)) {
> addr_port = qdict_get_str(addr, "port");
> - qdict_put_str(addrdict, "port", g_strdup(addr_port));
> + qdict_put_str(addrdict, "port", addr_port);
> }
> }
Reviewed-by: Fabiano Rosas <farosas@suse.de>
- Re: [PATCH for-9.2 8/9] tests/qtest/migration-test: Don't strdup in get_dirty_rate(), (continued)
- [PATCH for-9.2 9/9] tests/qtest/migration-test: Don't leak QTestState in test_multifd_tcp_cancel(), Peter Maydell, 2024/08/20
- [PATCH for-9.2 3/9] tests/qtest/migration-test: Fix leaks in calc_dirtyrate_ready(), Peter Maydell, 2024/08/20
- [PATCH for-9.2 2/9] tests/qtest/migration-test: Don't leak resp in multifd_mapped_ram_fdset_end(), Peter Maydell, 2024/08/20
- [PATCH for-9.2 6/9] tests/unit/crypto-tls-x509-helpers: deinit privkey in test_tls_cleanup, Peter Maydell, 2024/08/20
- [PATCH for-9.2 7/9] tests/qtest/migration-helpers: Don't dup argument to qdict_put_str(), Peter Maydell, 2024/08/20
- Re: [PATCH for-9.2 7/9] tests/qtest/migration-helpers: Don't dup argument to qdict_put_str(),
Fabiano Rosas <=
- [PATCH for-9.2 5/9] tests/qtest/migration-test: Free QCRyptoTLSTestCertReq objects, Peter Maydell, 2024/08/20