From nobody Tue Jan 27 21:17:16 2026 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 4f0ysT15Tpz6QRtj for ; Tue, 27 Jan 2026 21:17:17 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4f0ysS5t0mz3m1F for ; Tue, 27 Jan 2026 21:17:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769548636; 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=F1kenosM6cm8nZTQAWN05H2E0r4ipnHLPnUZ2CXJL04=; b=aPU2bqeioSNSFvK0xNkOHZbZaNL9OEeeCXlmqanWhbglquos7HSuXITrMJH4BCDPECQ81U A7KUOztFson/BMD+AexjSPzYtfkqvOvxt7rXPCXvMMApm41tVCfVSUr0DEwIu8lGaHj94w 86imUhc2IvgV5uZJD4+8HJV7rJ+myFwwUxlhAeaEpTRXKfj+nxgV2j+OWPDuy4SYec0/6L TOLBduf3FL0esWsxg2QKYtCNi1IBY0bh6ORGAJofKl/rWpbjBPrjTSyNeAHiZ75x8zltob jwryyR4BCciBZribWCTxOF8+nhZCpA5PgLedMLoUALizl4NT+bmgnstPP2t9AQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769548636; 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=F1kenosM6cm8nZTQAWN05H2E0r4ipnHLPnUZ2CXJL04=; b=mHXH4Ed7xdrJ/mHiRjCI4+GSFNdHtAPjsOuEQt/ecb0n52QE44rd4cbQPBUteegdchN/sy p/sw3kqtyRxQlipJ6502JTDyLMI0ox9RIKqjQJwD092UA9zfVVQhdYkkFXGep4OtXpjUAJ uapWSxqgGTF7QId8apxOUVa9cDAHYltCNhlWgOZXq+4QHPOT3gkjmFFpbYj8kp5QuC9dWc MSyv29s0RTDiIDD0gl4Yq0LKc2NfzqMOc107+A6IBt6qs0G/mvEm4F5JVFMt26pQWOdy4y eUa1JQWBr9J5Lo6/BOuAZ/+5JgchlysX6kkv9sNTiFhziGuyjqBEwM7KKjBE9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769548636; a=rsa-sha256; cv=none; b=xSeKCxo+YRZDbd+kkZHeh0Gz33zHjnGGoYoAxhwYF5LeFP+yep1IhhUEz1hfGQ3WoMFPtu k+9Ygw9Q7C30gcJJoXZIGlYcbeD9npgY7Cwq8LeuFe/rOWnjA/VYm4yfbBMSipzRoX3Hxj L4d8dE/EDa5mNdC8e0GkDveKHjyNsQUoWoqxV0Guf6i/W8BfAehFvySLOIAvSmndHhChos WkBIOqte3pifbgAG+v+5KSWXBWWtMFa9P5BQmOcFIEC3P5ea5TW0b/NQ5ax3u5FgrXfQq2 rdonCWlwXdpEyPiD34yfaPYxcpCglygk0/z07r/y7GcBHdc4mNn3ojxpRaABOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4f0ysS4jDxz7dK for ; Tue, 27 Jan 2026 21:17:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37509 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 27 Jan 2026 21:17:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 8a9508563542 - main - tests/kern: make ssl_sendfile:truncate and ssl_sendfile:grow less flaky 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8a9508563542d709b1a42a065e6e99e004a8b3fe Auto-Submitted: auto-generated Date: Tue, 27 Jan 2026 21:17:16 +0000 Message-Id: <69792b5c.37509.d3cf068@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=8a9508563542d709b1a42a065e6e99e004a8b3fe commit 8a9508563542d709b1a42a065e6e99e004a8b3fe Author: Gleb Smirnoff AuthorDate: 2026-01-27 21:13:11 +0000 Commit: Gleb Smirnoff CommitDate: 2026-01-27 21:17:08 +0000 tests/kern: make ssl_sendfile:truncate and ssl_sendfile:grow less flaky First problem is a trivial race that the client thread doesn't see updated c.sbytes. Second problem applies only to the truncate test. On a machine with huge default buffer sizes, there is a chance that sendfile(2) will fill both buffers with amount of data that is larger than the size we plan to truncate. To minimise chances for this scenario, increase file size and truncate it less aggressively, also try to decrease buffer sizes. --- tests/sys/kern/ssl_sendfile.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/tests/sys/kern/ssl_sendfile.c b/tests/sys/kern/ssl_sendfile.c index 928a44a50811..884079e80be5 100644 --- a/tests/sys/kern/ssl_sendfile.c +++ b/tests/sys/kern/ssl_sendfile.c @@ -42,7 +42,7 @@ #include -#define FSIZE (size_t)(1024 * 1024) +#define FSIZE (size_t)(2 * 1024 * 1024) struct ctx { EVP_PKEY *pkey; /* Self-signed key ... */ @@ -338,10 +338,15 @@ ATF_TC_BODY(truncate, tc) char buf[128 * 1024]; size_t nread; int n; -#define TRUNC (FSIZE / 2) +#define TRUNC (FSIZE - 1024) common_init(&c); + ATF_REQUIRE(setsockopt(c.ss, SOL_SOCKET, SO_SNDBUF, &(int){FSIZE / 16}, + sizeof(int)) == 0); + ATF_REQUIRE(setsockopt(c.cs, SOL_SOCKET, SO_RCVBUF, &(int){FSIZE / 16}, + sizeof(int)) == 0); + sendme(&c, 0, 0, false); /* Make sure sender is waiting on the socket buffer. */ while (poll(&(struct pollfd){ .fd = c.ss, .events = POLLOUT }, 1, 1) @@ -354,7 +359,9 @@ ATF_TC_BODY(truncate, tc) nread += n; } ATF_REQUIRE(nread == TRUNC); + ATF_REQUIRE(pthread_mutex_lock(&c.mtx) == 0); ATF_REQUIRE(c.sbytes == TRUNC); + ATF_REQUIRE(pthread_mutex_unlock(&c.mtx) == 0); common_cleanup(&c); } @@ -372,6 +379,11 @@ ATF_TC_BODY(grow, tc) common_init(&c); + ATF_REQUIRE(setsockopt(c.ss, SOL_SOCKET, SO_SNDBUF, &(int){FSIZE / 16}, + sizeof(int)) == 0); + ATF_REQUIRE(setsockopt(c.cs, SOL_SOCKET, SO_RCVBUF, &(int){FSIZE / 16}, + sizeof(int)) == 0); + sendme(&c, 0, 0, false); /* Make sure sender is waiting on the socket buffer. */ while (poll(&(struct pollfd){ .fd = c.ss, .events = POLLOUT }, 1, 1) @@ -398,7 +410,9 @@ ATF_TC_BODY(grow, tc) nread += n; } ATF_REQUIRE(nread == GROW); + ATF_REQUIRE(pthread_mutex_lock(&c.mtx) == 0); ATF_REQUIRE(c.sbytes == FSIZE + GROW); + ATF_REQUIRE(pthread_mutex_unlock(&c.mtx) == 0); common_cleanup(&c); }