From nobody Wed Mar 02 21:57:22 2022 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id CDA2819E08BF; Wed, 2 Mar 2022 21:57:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4K87JM38Ltz3KXF; Wed, 2 Mar 2022 21:57:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1646258243; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dNDY9FgJWwjvg2QhIZM4rU6ePPZAgU35JDja58JgDJY=; b=vYqdbkfvLX51181ikBBeFeH/szF3WL/y6SIO+BSZnoPnQD2X9kH36iKkK/ByHm6DcY8d/H Z71RUsVJ+jNyb1tYnRMoYFhZy/s6u/9a1shwKtQXcS09hKKpelRuXbNpQyp49Nf3vA4GX2 f03SgI/b8Kekd980KA+rdjMP35aM9ZnJWcuiR8Rxl4119oJOC9XQ6iNDZSPNyB0vg2dadx xD5KUfQ2clMBCiyzTl5GdfdjJiOWgBRJcd2/z2Tuair25cdhRvD8R8BMfGh+jeJsISReBm hgd3i2/irQHEeinzy8bkCDuF37zuaIl78pXoSLdlmYeAh2q320B+hKxErZ8QtA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ABF7A3466; Wed, 2 Mar 2022 21:57:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 222LvMhN065144; Wed, 2 Mar 2022 21:57:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 222LvMTI065143; Wed, 2 Mar 2022 21:57:22 GMT (envelope-from git) Date: Wed, 2 Mar 2022 21:57:22 GMT Message-Id: <202203022157.222LvMTI065143@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Eric van Gyzen Subject: git: 74c02b96ad5d - stable/13 - sem_clockwait_np test: relax time constraint on VMs List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vangyzen X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 74c02b96ad5d02c80d0e4e6f9c0abd9f1912e61d Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1646258243; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dNDY9FgJWwjvg2QhIZM4rU6ePPZAgU35JDja58JgDJY=; b=MvZdaauPjxbzKbmGeCl/ouUIMItV2egIa/XEABLk63UVJCxZ49KrU7ii7UbAd9jDW7iFhC wQ8B3xZfl3cAsylXNJq3yxF3f1VxnYAqmNloHY4z+URI/qWJbFwft3hqkWMaOXg6BuGLGZ LFYiTKLqBDcyNnqOnoqT2FK79KHI/UPBa36Dl5Oqd1o+SGluLVC9FJivYyaKcg6j0jCqcX 3A9MqVOZgWxKD7MdVjQfDkVi+C8zx9B3eFSl66nuM7AxB76OuaHl4gwfkcc4flQU97yChs wSFajDIu1DyNNxS4FvunSc1aBdVEGmjm57uKPc0u9h7oY9MPXjZN32LQzg6tnw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1646258243; a=rsa-sha256; cv=none; b=uX89KYHiCkmrT4zUGrCW5JjowKE1p23j6O/6j4/DqLI2rRI25ehqnjIv8IYNNkfkz/pfEm xOhPW30BnE95bcrjRT+axXwqgMnYjWO6/YYVdWpUgxJnXb6YcXIR1pA2yCmgE+UFVVI7rJ 2/TlsXDHx4wubVuWZaBC+Er6e91cZSCom3cmN8Vg5GESaDBjfvlbgHKJkzjNzc0LhyulRf kC1m4KTVGb7AFWN5ELQrn6XWUvgXvtRTN6gpBSZxBZ9nrbqpwkV0HIM9DYWiQ9jngf/qZV TeRjxcN5Dj1PArNAYfHGz46vE02PK7FJXCnPumxPB8RcE6LucRpNHm6c9ii8gg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by vangyzen: URL: https://cgit.FreeBSD.org/src/commit/?id=74c02b96ad5d02c80d0e4e6f9c0abd9f1912e61d commit 74c02b96ad5d02c80d0e4e6f9c0abd9f1912e61d Author: Eric van Gyzen AuthorDate: 2021-10-01 10:37:17 +0000 Commit: Eric van Gyzen CommitDate: 2022-03-02 21:56:30 +0000 sem_clockwait_np test: relax time constraint on VMs In a guest on a busy hypervisor, the time remaining after an interrupted sleep could be much lower than other environments. Relax the lower bound on VMs. MFC after: 1 week Sponsored by: Dell EMC Isilon (cherry picked from commit 31466594cd09d1413dbd8cab516fafc3557c2200) --- contrib/netbsd-tests/lib/librt/t_sem.c | 31 +++++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/contrib/netbsd-tests/lib/librt/t_sem.c b/contrib/netbsd-tests/lib/librt/t_sem.c index 5e059238f278..55a416083846 100644 --- a/contrib/netbsd-tests/lib/librt/t_sem.c +++ b/contrib/netbsd-tests/lib/librt/t_sem.c @@ -60,6 +60,11 @@ __COPYRIGHT("@(#) Copyright (c) 2008, 2010\ The NetBSD Foundation, inc. All rights reserved."); __RCSID("$NetBSD: t_sem.c,v 1.3 2017/01/14 20:58:20 christos Exp $"); +#ifdef __FreeBSD__ +#include +#include +#endif + #include #include @@ -78,6 +83,24 @@ __RCSID("$NetBSD: t_sem.c,v 1.3 2017/01/14 20:58:20 christos Exp $"); #define SEM_REQUIRE(x) \ ATF_REQUIRE_EQ_MSG(x, 0, "%s", strerror(errno)) +#ifdef __FreeBSD__ +static bool +machine_is_virtual(void) +{ + char vm_guest[32]; + int error; + + error = sysctlbyname("kern.vm_guest", vm_guest, + &(size_t){sizeof(vm_guest)}, NULL, 0); + ATF_CHECK_EQ_MSG(0, error, "sysctlbyname(kern.vm_guest): %s", + strerror(errno)); + if (error != 0) { + return (false); + } + return (strcmp(vm_guest, "none") != 0); +} +#endif + ATF_TC_WITH_CLEANUP(basic); ATF_TC_HEAD(basic, tc) { @@ -306,15 +329,11 @@ ATF_TC_BODY(timedwait, tc) ATF_REQUIRE_ERRNO(EINTR, sem_clockwait_np(&sem, CLOCK_MONOTONIC, 0, &ts, &remain)); ATF_REQUIRE_MSG(got_sigalrm, "did not get SIGALRM"); - /* - * If this nsec comparison turns out to be unreliable due to timing, - * it could simply check that nsec < 100 ms. - */ ATF_REQUIRE_MSG(remain.tv_sec == 0 && - remain.tv_nsec >= 25*1000*1000 && + (remain.tv_nsec >= 25*1000*1000 || machine_is_virtual()) && remain.tv_nsec <= 75*1000*1000, "the remaining time was not as expected when a relative clockwait" - " got EINTR" ); + " got EINTR: %ld.%09ld", remain.tv_sec, remain.tv_nsec); #endif }