From 0b6e5773058e85b8e5e6ce83d3b275726e6883f2 Mon Sep 17 00:00:00 2001 From: AlexChen <alex.chen@huawei.com> Date: Wed, 16 Sep 2020 15:53:57 +0800 Subject: [PATCH] tests/commandtest: skip the test4 if the testcase is run in the container env In a container environment without an init thread, the daemoned process is not reclaimed, and Test4 loops forever, causing the compilation to hung. So, skip it. Signed-off-by: AlexChen <alex.chen@huawei.com> --- tests/commandtest.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/commandtest.c b/tests/commandtest.c index d5092b7dd0..ce492e31f7 100644 --- a/tests/commandtest.c +++ b/tests/commandtest.c @@ -259,6 +259,7 @@ static int test4(const void *unused G_GNUC_UNUSED) char *pidfile = virPidFileBuildPath(abs_builddir, "commandhelper"); pid_t pid; int ret = -1; + int count = 0; if (!pidfile) goto cleanup; @@ -275,9 +276,13 @@ static int test4(const void *unused G_GNUC_UNUSED) printf("cannot read pidfile\n"); goto cleanup; } - while (kill(pid, 0) != -1) - g_usleep(100*1000); - + while (kill(pid, 0) != -1) { + if (count++ >= 600) { + printf("check time exceeds 60s, it may be in container env, skip this testcase!!!\n"); + break; + } + g_usleep(100*1000); /* 100 */ + } ret = checkoutput("test4", NULL); cleanup: -- 2.27.0