From: Fabiano Rosas <farosas@suse.de>
To: Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org
Cc: "Peter Xu" <peterx@redhat.com>,
"Daniel P. Berrangé" <berrange@redhat.com>
Subject: Re: [PATCH for-9.2 8/9] tests/qtest/migration-test: Don't strdup in get_dirty_rate()
Date: Thu, 22 Aug 2024 09:27:30 -0300 [thread overview]
Message-ID: <87le0ozqrx.fsf@suse.de> (raw)
In-Reply-To: <20240820144912.320744-9-peter.maydell@linaro.org>
Peter Maydell <peter.maydell@linaro.org> writes:
> 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>
> ---
> tests/qtest/migration-test.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c
> index a659609ccb0..04122120987 100644
> --- a/tests/qtest/migration-test.c
> +++ b/tests/qtest/migration-test.c
> @@ -3435,7 +3435,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;
> @@ -3444,7 +3444,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");
Reviewed-by: Fabiano Rosas <farosas@suse.de>
next prev parent reply other threads:[~2024-08-22 12:28 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-20 14:49 [PATCH for-9.2 0/9] tests/qtest/migration-test: Fix various leaks Peter Maydell
2024-08-20 14:49 ` [PATCH for-9.2 1/9] tests/qtest/migration-test: Fix bootfile cleanup handling Peter Maydell
2024-08-21 21:00 ` Fabiano Rosas
2024-08-20 14:49 ` [PATCH for-9.2 2/9] tests/qtest/migration-test: Don't leak resp in multifd_mapped_ram_fdset_end() Peter Maydell
2024-08-21 21:01 ` Fabiano Rosas
2024-08-20 14:49 ` [PATCH for-9.2 3/9] tests/qtest/migration-test: Fix leaks in calc_dirtyrate_ready() Peter Maydell
2024-08-21 21:04 ` Fabiano Rosas
2024-08-20 14:49 ` [PATCH for-9.2 4/9] tests/qtest/migration-helpers: Fix migrate_get_socket_address() leak Peter Maydell
2024-08-22 12:24 ` Fabiano Rosas
2024-08-20 14:49 ` [PATCH for-9.2 5/9] tests/qtest/migration-test: Free QCRyptoTLSTestCertReq objects Peter Maydell
2024-08-22 12:43 ` Fabiano Rosas
2024-08-20 14:49 ` [PATCH for-9.2 6/9] tests/unit/crypto-tls-x509-helpers: deinit privkey in test_tls_cleanup Peter Maydell
2024-08-22 12:44 ` Fabiano Rosas
2024-08-20 14:49 ` [PATCH for-9.2 7/9] tests/qtest/migration-helpers: Don't dup argument to qdict_put_str() Peter Maydell
2024-08-22 12:26 ` Fabiano Rosas
2024-08-20 14:49 ` [PATCH for-9.2 8/9] tests/qtest/migration-test: Don't strdup in get_dirty_rate() Peter Maydell
2024-08-22 12:27 ` Fabiano Rosas [this message]
2024-08-20 14:49 ` [PATCH for-9.2 9/9] tests/qtest/migration-test: Don't leak QTestState in test_multifd_tcp_cancel() Peter Maydell
2024-08-22 12:31 ` Fabiano Rosas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87le0ozqrx.fsf@suse.de \
--to=farosas@suse.de \
--cc=berrange@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.