diff mbox series

[v6,6/6] migration-test: Only hide error if !QTEST_LOG

Message ID 20201021212721.440373-7-peterx@redhat.com
State New
Headers show
Series migration/postcopy: Sync faulted addresses after network recovered | expand

Commit Message

Peter Xu Oct. 21, 2020, 9:27 p.m. UTC
The errors are very useful when debugging qtest failures, especially when
QTEST_LOG=1 is set.  Let's allow override MigrateStart.hide_stderr when
QTEST_LOG=1 is specified, because that means the user wants to be verbose.

Not very nice to introduce the first QTEST_LOG env access in migration-test.c,
however it should be handy.  Without this patch, I was hacking error_report()
when debugging such errors.  Let's make things easier.

Signed-off-by: Peter Xu <peterx@redhat.com>
---
 tests/qtest/migration-test.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Comments

Thomas Huth Oct. 22, 2020, 5:34 a.m. UTC | #1
On 21/10/2020 23.27, Peter Xu wrote:
> The errors are very useful when debugging qtest failures, especially when
> QTEST_LOG=1 is set.  Let's allow override MigrateStart.hide_stderr when
> QTEST_LOG=1 is specified, because that means the user wants to be verbose.
> 
> Not very nice to introduce the first QTEST_LOG env access in migration-test.c,
> however it should be handy.  Without this patch, I was hacking error_report()
> when debugging such errors.  Let's make things easier.
> 
> Signed-off-by: Peter Xu <peterx@redhat.com>
> ---
>  tests/qtest/migration-test.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c
> index f410ec5996..f2142fbd3c 100644
> --- a/tests/qtest/migration-test.c
> +++ b/tests/qtest/migration-test.c
> @@ -464,6 +464,10 @@ static void migrate_postcopy_start(QTestState *from, QTestState *to)
>  }
>  
>  typedef struct {
> +    /*
> +     * QTEST_LOG=1 may override this.  When QTEST_LOG=1, we always dump errors
> +     * unconditionally, because it means the user would like to be verbose.
> +     */
>      bool hide_stderr;
>      bool use_shmem;
>      /* only launch the target process */
> @@ -557,7 +561,7 @@ static int test_migrate_start(QTestState **from, QTestState **to,
>  
>      g_free(bootpath);
>  
> -    if (args->hide_stderr) {
> +    if (!getenv("QTEST_LOG") && args->hide_stderr) {
>          ignore_stderr = "2>/dev/null";
>      } else {
>          ignore_stderr = "";

Reviewed-by: Thomas Huth <thuth@redhat.com>
diff mbox series

Patch

diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c
index f410ec5996..f2142fbd3c 100644
--- a/tests/qtest/migration-test.c
+++ b/tests/qtest/migration-test.c
@@ -464,6 +464,10 @@  static void migrate_postcopy_start(QTestState *from, QTestState *to)
 }
 
 typedef struct {
+    /*
+     * QTEST_LOG=1 may override this.  When QTEST_LOG=1, we always dump errors
+     * unconditionally, because it means the user would like to be verbose.
+     */
     bool hide_stderr;
     bool use_shmem;
     /* only launch the target process */
@@ -557,7 +561,7 @@  static int test_migrate_start(QTestState **from, QTestState **to,
 
     g_free(bootpath);
 
-    if (args->hide_stderr) {
+    if (!getenv("QTEST_LOG") && args->hide_stderr) {
         ignore_stderr = "2>/dev/null";
     } else {
         ignore_stderr = "";