From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:35900) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ghyjo-0003va-BY for qemu-devel@nongnu.org; Fri, 11 Jan 2019 10:28:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ghyjn-0006kT-AH for qemu-devel@nongnu.org; Fri, 11 Jan 2019 10:28:48 -0500 Received: from mail-wr1-x441.google.com ([2a00:1450:4864:20::441]:34575) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ghyjm-0006jR-RJ for qemu-devel@nongnu.org; Fri, 11 Jan 2019 10:28:47 -0500 Received: by mail-wr1-x441.google.com with SMTP id j2so15678567wrw.1 for ; Fri, 11 Jan 2019 07:28:46 -0800 (PST) References: <20190111143815.26107-1-alex.bennee@linaro.org> <89afa3af-940d-7f3b-ee7c-25027bfd18f5@redhat.com> From: Alex =?utf-8?Q?Benn=C3=A9e?= In-reply-to: <89afa3af-940d-7f3b-ee7c-25027bfd18f5@redhat.com> Date: Fri, 11 Jan 2019 15:28:44 +0000 Message-ID: <87sgxzusb7.fsf@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [RFC PATCH] tests: replace rem = sleep(time) with g_timer List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: qemu-devel@nongnu.org, cota@braap.org, ehabkost@redhat.com Paolo Bonzini writes: > On 11/01/19 15:38, Alex Benn=C3=A9e wrote: >> Relying on sleep to always return having slept isn't safe as a signal >> may have occurred. If signals are constantly incoming the program will >> never reach it's termination condition. This is believed to be the >> mechanism causing time outs for qht-test in Travis. >> >> Instead we use a g_timer to determine if the duration of the test has >> passed and sleep for a second at a time. This may bias benchmark >> results for short runs. > > Why not g_usleep? It already does a while loop around nanosleep (which > returns the remaining time in the wait, like select but unlike sleep and > poll). Yeah I'm testing that now. However I have managed to trigger: ERROR:tests/test-qht-par.c:20:test_qht: assertion failed (rc =3D=3D 0): (= 35584 =3D=3D 0) but I'm not sure if this is some other side-effect of the test-qht-par/qht-bench invocation dance. -- Alex Benn=C3=A9e