qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v1 repost] qtest: fix qtest log fd should be initial


From: john.liuli
Subject: [Qemu-devel] [PATCH v1 repost] qtest: fix qtest log fd should be initialized before qtest chardev
Date: Wed, 22 Oct 2014 10:26:47 +0800

From: Li Liu <address@hidden>

qtest_log_fp should be inited before qemu_chr_add_handlers.
If not the log dumped from callback functions may be lost.

easy to reproduce it by command:
"QTEST_LOG=1 QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64
gtester -k --verbose -m=quick tests/qdev-monitor-test"

The log "[I xxxxxx] OPENED" should be printed out by
qtest_event, but does not.

Signed-off-by: Li Liu <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
---
 qtest.c |    9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/qtest.c b/qtest.c
index ef0d991..2a33d98 100644
--- a/qtest.c
+++ b/qtest.c
@@ -537,11 +537,6 @@ void qtest_init(const char *qtest_chrdev, const char 
*qtest_log, Error **errp)
         return;
     }
 
-    qemu_chr_add_handlers(chr, qtest_can_read, qtest_read, qtest_event, chr);
-    qemu_chr_fe_set_echo(chr, true);
-
-    inbuf = g_string_new("");
-
     if (qtest_log) {
         if (strcmp(qtest_log, "none") != 0) {
             qtest_log_fp = fopen(qtest_log, "w+");
@@ -550,6 +545,10 @@ void qtest_init(const char *qtest_chrdev, const char 
*qtest_log, Error **errp)
         qtest_log_fp = stderr;
     }
 
+    qemu_chr_add_handlers(chr, qtest_can_read, qtest_read, qtest_event, chr);
+    qemu_chr_fe_set_echo(chr, true);
+
+    inbuf = g_string_new("");
     qtest_chr = chr;
 }
 
-- 
1.7.9.5





reply via email to

[Prev in Thread] Current Thread [Next in Thread]