From nobody Mon Apr 27 19:20:43 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 4g4D1R5nM7z6bVhY for ; Mon, 27 Apr 2026 19:20:43 +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" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4g4D1R3hbjz47BD for ; Mon, 27 Apr 2026 19:20:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1777317643; 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=iy/zDQh1rCcW5xh8TXXBZkPbaPS17nqQ5DdQ11Aj7LE=; b=dBlPzevagVNTJhyCwcMBJwn1V0GTHvwCbVifk3GG+7Vca9yGvVCORBZkTgG3U8CtJsDicc GC2uGp7JOSp1nboX1hHje54JGb4d2Vrh4AAVe/me5AlE1hMpQmZ+QCcaSkGvciXQ7uo4Td Qp/8xSQitQgBwV3qDl9lndy+/qrslkDpl+yCXnMDKPtUrbqoz1eIPK3edB9tPZ9cdCTIOL Ka6f/55F2RJ0CVED0gNn2rFU+hquqOFK8zTrgFvhZIRTTPxjRwHDZYb8AdE4zt2CRP2CMq WB7RCVsRvxb4wvPuTtsAddiBElmLMrKBcVFjSegvyupLM057Lwn6ZvLoG1koYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1777317643; a=rsa-sha256; cv=none; b=aVALH1KBWjlwwEr421G8cQZoEe43iGdCVcozRWmbfvWnmnOPCs9d1v15bh3ZHx9BWSGN95 kKSQt4FTPeLXBbirEZ6oWWe0lMWuKUHYqBoRVbwnCx6obqGXMsibw4vdIkmZ3qaCoBBicd QFaXoj3z4W29HAUyVYYNK7Z6H9iuHLZIJlANEVbFNKEnrJ1eCYJVEDNFM/QLQ1wvt3gd1D ckPx3TEHMQKlxI/Vc2QmmPWboDOd05mZuLd3pbv7eSQ+WuBP/E3v3jnHWBnjtQcbBWS0Fm QvOUTMAUqdodNXLdfFGCixgj1UVMnQhr33cvNdPRrYBy/6s8mbqpQtu8XzNL/Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1777317643; 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=iy/zDQh1rCcW5xh8TXXBZkPbaPS17nqQ5DdQ11Aj7LE=; b=yUWC2sg2PoQQqaqSUzb6gpFCZdU56hiSiZ8gxcpxX3ob9upyLgJbHNGRMdvdTGokQljHZc G2Xmp9UEyEam5N5LBq2k4aLuM8LiWyMEuP1dT1UQlrpnnWlzchZKuT/YFMq+Szbn2m/dpA EwG8qlV427c1fu3CnsMxCxXm2HZU/EZMowGMP5M24HbhktUtKwVxlPXUrctesqs18cHrP4 A9j7VGO3p/vbK193Ik9Q2KFnd1vi1tJVqlQk6ZqhuuFqx1s6v7WT37HMsQWt460aZaQlLP VyHQB7SDT+s4NfsijUEJsK9m0YtqVjw7IFcUu4BXaV6sHnmI5OKYjobx7pvgQg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4g4D1R2tN7z53g for ; Mon, 27 Apr 2026 19:20:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 27f3a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 27 Apr 2026 19:20:43 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: f4be16983dea - main - tests/net/if_clone_test: Add a test for races between if_detach() and if_vmove_reclaim() 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: zlei X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f4be16983dea4904f85ac20e921ad2a8c18a0f79 Auto-Submitted: auto-generated Date: Mon, 27 Apr 2026 19:20:43 +0000 Message-Id: <69efb70b.27f3a.411ca92f@gitrepo.freebsd.org> The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=f4be16983dea4904f85ac20e921ad2a8c18a0f79 commit f4be16983dea4904f85ac20e921ad2a8c18a0f79 Author: Zhenlei Huang AuthorDate: 2026-04-27 19:17:21 +0000 Commit: Zhenlei Huang CommitDate: 2026-04-27 19:17:21 +0000 tests/net/if_clone_test: Add a test for races between if_detach() and if_vmove_reclaim() Ideally we shall have tests for all possible races. It is races between if_detach(), if_vmove_loan(), if_vmove_reclaim() and vnet_if_return(). Well that requires too many tests and it appears to be less valuable to have them all. So focus on potential in future regressions related to recent fixes [1] and [2] only. [1] ee9456ce3753 ifnet: Fix races in if_vmove_reclaim() [2] ba7f47d47dc1 ifnet: if_detach(): Fix races with vmove operations MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D56606 --- tests/sys/net/if_clone_test.sh | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/tests/sys/net/if_clone_test.sh b/tests/sys/net/if_clone_test.sh index 864ff86a7d44..d636815175b4 100755 --- a/tests/sys/net/if_clone_test.sh +++ b/tests/sys/net/if_clone_test.sh @@ -96,6 +96,34 @@ epair_destroy_race_cleanup() cleanup_ifaces } +atf_test_case epair_destroy_race2 cleanup +epair_destroy_race2_head() +{ + atf_set "descr" "Race if_detach() and if_vmove_reclaim()" + atf_set "require.user" "root" +} +epair_destroy_race2_body() +{ + jid=$(jail -ic vnet host.hostname="epair_destroy2" persist path=/) + + for i in `seq 1 10` + do + epair_a=$(ifconfig epair create) + epair_b=${epair_a%a}b + ifconfig $epair_b vnet $jid + ifconfig $epair_a destroy & pid1=$! + ifconfig $epair_b -vnet $jid & pid2=$! + wait $pid1 + wait $pid2 + done + + jail -R $jid + true +} +epair_destroy_race2_cleanup() +{ +} + atf_test_case epair_ipv6_up_stress cleanup epair_ipv6_up_stress_head() { @@ -432,6 +460,7 @@ atf_init_test_cases() atf_add_test_case epair_stress atf_add_test_case epair_up_stress atf_add_test_case epair_destroy_race + atf_add_test_case epair_destroy_race2 atf_add_test_case faith_ipv6_up_stress atf_add_test_case faith_stress atf_add_test_case faith_up_stress