From: Chen Qun <kuhn.chenqun@huawei.com>
To: <qemu-devel@nongnu.org>, <qemu-trivial@nongnu.org>
Cc: lvivier@redhat.com, peter.maydell@linaro.org, thuth@redhat.com,
zhang.zhanghailiang@huawei.com, hskinnemoen@google.com,
wuhaotsh@google.com, Euler Robot <euler.robot@huawei.com>,
Chen Qun <kuhn.chenqun@huawei.com>
Subject: [PATCH-for-5.2? 2/2] tests/qtest: fix memleak in npcm7xx_watchdog_timer-test
Date: Wed, 18 Nov 2020 19:56:46 +0800 [thread overview]
Message-ID: <20201118115646.2461726-3-kuhn.chenqun@huawei.com> (raw)
In-Reply-To: <20201118115646.2461726-1-kuhn.chenqun@huawei.com>
Properly free resp for get_watchdog_action() to avoid memory leak.
ASAN shows memory leak stack:
Indirect leak of 12360 byte(s) in 3 object(s) allocated from:
#0 0x7f41ab6cbd4e in __interceptor_calloc (/lib64/libasan.so.5+0x112d4e)
#1 0x7f41ab4eaa50 in g_malloc0 (/lib64/libglib-2.0.so.0+0x55a50)
#2 0x556487d5374b in qdict_new ../qobject/qdict.c:29
#3 0x556487d65e1a in parse_object ../qobject/json-parser.c:318
#4 0x556487d65cb6 in parse_pair ../qobject/json-parser.c:287
#5 0x556487d65ebd in parse_object ../qobject/json-parser.c:343
#6 0x556487d661d5 in json_parser_parse ../qobject/json-parser.c:580
#7 0x556487d513df in json_message_process_token ../qobject/json-streamer.c:92
#8 0x556487d63919 in json_lexer_feed_char ../qobject/json-lexer.c:313
#9 0x556487d63d75 in json_lexer_feed ../qobject/json-lexer.c:350
#10 0x556487d28b2a in qmp_fd_receive ../tests/qtest/libqtest.c:613
#11 0x556487d2a16f in qtest_qmp_eventwait_ref ../tests/qtest/libqtest.c:827
#12 0x556487d248e2 in get_watchdog_action ../tests/qtest/npcm7xx_watchdog_timer-test.c:94
#13 0x556487d25765 in test_enabling_flags ../tests/qtest/npcm7xx_watchdog_timer-test.c:243
Reported-by: Euler Robot <euler.robot@huawei.com>
Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com>
---
tests/qtest/npcm7xx_watchdog_timer-test.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/tests/qtest/npcm7xx_watchdog_timer-test.c b/tests/qtest/npcm7xx_watchdog_timer-test.c
index 54d5d6d8f2..3aae5a0438 100644
--- a/tests/qtest/npcm7xx_watchdog_timer-test.c
+++ b/tests/qtest/npcm7xx_watchdog_timer-test.c
@@ -204,6 +204,7 @@ static void test_enabling_flags(gconstpointer watchdog)
{
const Watchdog *wd = watchdog;
QTestState *qts;
+ QDict *rsp;
/* Neither WTIE or WTRE is set, no interrupt or reset should happen */
qts = qtest_init("-machine quanta-gsj");
@@ -240,8 +241,9 @@ static void test_enabling_flags(gconstpointer watchdog)
g_assert_false(qtest_get_irq(qts, wd->irq));
qtest_clock_step(qts, watchdog_calculate_steps(RESET_CYCLES,
watchdog_prescaler(qts, wd)));
- g_assert_false(strcmp(qdict_get_str(get_watchdog_action(qts), "action"),
- "reset"));
+ rsp = get_watchdog_action(qts);
+ g_assert_false(strcmp(qdict_get_str(rsp, "action"), "reset"));
+ qobject_unref(rsp);
qtest_qmp_eventwait(qts, "RESET");
qtest_quit(qts);
--
2.23.0
next prev parent reply other threads:[~2020-11-18 11:59 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-18 11:56 [PATCH-for-5.2? 0/2] two qtest bugfix Chen Qun
2020-11-18 11:56 ` [PATCH-for-5.2? 1/2] tests/qtest: variable defined by g_autofree need to be initialized Chen Qun
2020-11-18 12:13 ` Philippe Mathieu-Daudé
2020-11-18 12:32 ` Chenqun (kuhn)
2020-11-19 7:55 ` Thomas Huth
2020-11-18 17:12 ` Havard Skinnemoen
2020-11-19 8:26 ` Peter Maydell
2020-11-19 8:35 ` Chenqun (kuhn)
2020-11-19 8:38 ` Peter Maydell
2020-11-19 11:22 ` Chenqun (kuhn)
2020-11-19 12:41 ` Chenqun (kuhn)
2020-11-18 11:56 ` Chen Qun [this message]
2020-11-18 17:14 ` [PATCH-for-5.2? 2/2] tests/qtest: fix memleak in npcm7xx_watchdog_timer-test Havard Skinnemoen
2020-11-18 17:22 ` Hao Wu
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=20201118115646.2461726-3-kuhn.chenqun@huawei.com \
--to=kuhn.chenqun@huawei.com \
--cc=euler.robot@huawei.com \
--cc=hskinnemoen@google.com \
--cc=lvivier@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-trivial@nongnu.org \
--cc=thuth@redhat.com \
--cc=wuhaotsh@google.com \
--cc=zhang.zhanghailiang@huawei.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).