Re: [PATCH] tests: Fix memory leak in tpm-util.c

2021-01-24 Thread Stefan Berger

On 1/21/21 10:44 AM, Philippe Mathieu-Daudé wrote:

On 1/15/21 9:46 PM, Stefan Berger wrote:

This patch fixes the following memory leak detected by asan:

Indirect leak of 560320 byte(s) in 136 object(s) allocated from:
 #0 0x556b3b3f9b57 in calloc 
(/home/stefanb/tmp/qemu-tip/build/tests/qtest/tpm-crb-swtpm-test+0x23fb57)
 #1 0x152b0e96b9b0 in g_malloc0 (/lib64/libglib-2.0.so.0+0x589b0)
 #2 0x556b3b588f61 in parse_object 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:318:12
 #3 0x556b3b588f61 in parse_value 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:546:16
 #4 0x556b3b5886e8 in json_parser_parse 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:580:14
 #5 0x556b3b52ff4a in json_message_process_token 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-streamer.c:92:12
 #6 0x556b3b59896f in json_lexer_feed_char 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-lexer.c:313:13
 #7 0x556b3b598443 in json_lexer_feed 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-lexer.c:350:9
 #8 0x556b3b436c70 in qmp_fd_receive 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:614:9
 #9 0x556b3b435871 in qtest_qmp_receive_dict 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:636:12
 #10 0x556b3b435871 in qtest_qmp_receive 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:624:27
 #11 0x556b3b435c59 in qtest_vqmp 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:715:12
 #12 0x556b3b435c59 in qtest_qmp 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:756:16
 #13 0x556b3b4328c7 in tpm_util_wait_for_migration_complete 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/tpm-util.c:245:15
 #14 0x556b3b4333be in tpm_test_swtpm_migration_test 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/tpm-tests.c:117:5
 #15 0x152b0e98e29d  (/lib64/libglib-2.0.so.0+0x7b29d)

Signed-off-by: Stefan Berger 
Cc: Philippe Mathieu-Daudé 
---
  tests/qtest/tpm-util.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé 
Tested-by: Philippe Mathieu-Daudé 

Thanks!



I hope it solves all TPM-related memory leak issues for your tests. I 
have already seen this patch  in a PULL request now.


   Stefan




Phil.






Re: [PATCH] tests: Fix memory leak in tpm-util.c

2021-01-21 Thread Philippe Mathieu-Daudé
On 1/15/21 9:46 PM, Stefan Berger wrote:
> This patch fixes the following memory leak detected by asan:
> 
> Indirect leak of 560320 byte(s) in 136 object(s) allocated from:
> #0 0x556b3b3f9b57 in calloc 
> (/home/stefanb/tmp/qemu-tip/build/tests/qtest/tpm-crb-swtpm-test+0x23fb57)
> #1 0x152b0e96b9b0 in g_malloc0 (/lib64/libglib-2.0.so.0+0x589b0)
> #2 0x556b3b588f61 in parse_object 
> /home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:318:12
> #3 0x556b3b588f61 in parse_value 
> /home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:546:16
> #4 0x556b3b5886e8 in json_parser_parse 
> /home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:580:14
> #5 0x556b3b52ff4a in json_message_process_token 
> /home/stefanb/tmp/qemu-tip/build/../qobject/json-streamer.c:92:12
> #6 0x556b3b59896f in json_lexer_feed_char 
> /home/stefanb/tmp/qemu-tip/build/../qobject/json-lexer.c:313:13
> #7 0x556b3b598443 in json_lexer_feed 
> /home/stefanb/tmp/qemu-tip/build/../qobject/json-lexer.c:350:9
> #8 0x556b3b436c70 in qmp_fd_receive 
> /home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:614:9
> #9 0x556b3b435871 in qtest_qmp_receive_dict 
> /home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:636:12
> #10 0x556b3b435871 in qtest_qmp_receive 
> /home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:624:27
> #11 0x556b3b435c59 in qtest_vqmp 
> /home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:715:12
> #12 0x556b3b435c59 in qtest_qmp 
> /home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:756:16
> #13 0x556b3b4328c7 in tpm_util_wait_for_migration_complete 
> /home/stefanb/tmp/qemu-tip/build/../tests/qtest/tpm-util.c:245:15
> #14 0x556b3b4333be in tpm_test_swtpm_migration_test 
> /home/stefanb/tmp/qemu-tip/build/../tests/qtest/tpm-tests.c:117:5
> #15 0x152b0e98e29d  (/lib64/libglib-2.0.so.0+0x7b29d)
> 
> Signed-off-by: Stefan Berger 
> Cc: Philippe Mathieu-Daudé 
> ---
>  tests/qtest/tpm-util.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé 
Tested-by: Philippe Mathieu-Daudé 

Thanks!

Phil.




[PATCH] tests: Fix memory leak in tpm-util.c

2021-01-15 Thread Stefan Berger
This patch fixes the following memory leak detected by asan:

Indirect leak of 560320 byte(s) in 136 object(s) allocated from:
#0 0x556b3b3f9b57 in calloc 
(/home/stefanb/tmp/qemu-tip/build/tests/qtest/tpm-crb-swtpm-test+0x23fb57)
#1 0x152b0e96b9b0 in g_malloc0 (/lib64/libglib-2.0.so.0+0x589b0)
#2 0x556b3b588f61 in parse_object 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:318:12
#3 0x556b3b588f61 in parse_value 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:546:16
#4 0x556b3b5886e8 in json_parser_parse 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-parser.c:580:14
#5 0x556b3b52ff4a in json_message_process_token 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-streamer.c:92:12
#6 0x556b3b59896f in json_lexer_feed_char 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-lexer.c:313:13
#7 0x556b3b598443 in json_lexer_feed 
/home/stefanb/tmp/qemu-tip/build/../qobject/json-lexer.c:350:9
#8 0x556b3b436c70 in qmp_fd_receive 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:614:9
#9 0x556b3b435871 in qtest_qmp_receive_dict 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:636:12
#10 0x556b3b435871 in qtest_qmp_receive 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:624:27
#11 0x556b3b435c59 in qtest_vqmp 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:715:12
#12 0x556b3b435c59 in qtest_qmp 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/libqtest.c:756:16
#13 0x556b3b4328c7 in tpm_util_wait_for_migration_complete 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/tpm-util.c:245:15
#14 0x556b3b4333be in tpm_test_swtpm_migration_test 
/home/stefanb/tmp/qemu-tip/build/../tests/qtest/tpm-tests.c:117:5
#15 0x152b0e98e29d  (/lib64/libglib-2.0.so.0+0x7b29d)

Signed-off-by: Stefan Berger 
Cc: Philippe Mathieu-Daudé 
---
 tests/qtest/tpm-util.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/qtest/tpm-util.c b/tests/qtest/tpm-util.c
index 5a33a6ef0f..b70cc32d60 100644
--- a/tests/qtest/tpm-util.c
+++ b/tests/qtest/tpm-util.c
@@ -250,7 +250,7 @@ void tpm_util_wait_for_migration_complete(QTestState *who)
 status = qdict_get_str(rsp_return, "status");
 completed = strcmp(status, "completed") == 0;
 g_assert_cmpstr(status, !=,  "failed");
-qobject_unref(rsp_return);
+qobject_unref(rsp);
 if (completed) {
 return;
 }
-- 
2.26.2