From nobody Thu Apr 30 09:53:25 2026 X-Original-To: dev-commits-src-branches@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 4g5qHT5Lw2z6bWMn for ; Thu, 30 Apr 2026 09:53:25 +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 4g5qHT3SHJz3DqZ for ; Thu, 30 Apr 2026 09:53:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1777542805; 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=cFJ4KC9XqiTf0ZDoXsVIA2u2Qi53U2LuAeK8hCTNt2E=; b=DamusF7/aS7ZSHJJJ0SrUAcACBzQGZkuCceF4WL/3WLmNe4CGrtRw2koZJo6YF8IDEYMZa 695ZP665khuiu4F5JdDfPFflusAReXL+eWK0YoxVQvTi/xL+eogJVVAVgON+XkqFzbYocV HCYGO99OTa3UHDwIEMd/cMi1i59gj6ZdJegxFs/O5EllADyZ1GCRtuX/fPk62aywTDGhIj UY9VeQ4pDy0v84ILuODoqHdYaX2wKpWGzjt+8WU1n6HxLymqlfI9IBwSDKj4adToP6uJFx dtGG19TUFHfMYfeWx0oHb+e7HNuirDYJDo/xkcH4ebRnfBgEC7SLVRy3IvCfig== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1777542805; a=rsa-sha256; cv=none; b=A55wndfbFKlB+EON9vlvZfInGOPfz0xiTvVexY9kRgmzob6xiBHYsKgliXXaEaLx7F9TFt jdYtD6Jmuy9BmLujTVUNv9pUqQQ9Lu88G8gbh1vPQW6wmXKmEB0oz0jtlSSaEVjsxJ1TmY Mgje38uVDlLDttwrKA236fVXMin5fcqSBOHRQ4HHnPNu16PaR4jYLKC5y9EEXz0rFxoqPG b0cOaACG+bwcVc+EZTASjKHnCDIlIo/5YYZA6chSuOvPV285EJ7fqdH+NjuU0BWtcOqYVV jbicMI+t+dYnkA7AaajSLf6x+tCmqxLb+GqYLul3k1zBX1nsmt15n1o2llpU0g== 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=1777542805; 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=cFJ4KC9XqiTf0ZDoXsVIA2u2Qi53U2LuAeK8hCTNt2E=; b=jhen+TEhzoPzzMf+zk0vtq3KaFwFohEiR5VxgYrXb46ih15Lv+pj1LAKn3tN9a69FCKr8S vk+m82Dk1YsaQZrEif/BfAbFDd0rq6kVTDXDMfDZmOXEINnLayyghA/IrgXOumbvhy8bSG +XK/JuADsbt13OnvmV9crXTeCLAB9ISIcJyemY+AJYMKiWjVK7Hj09pGBw2wPP667e1FVv C/WrYHvUPPQPJbzIzUxuITkOcUWF1Vfh7DewaNpNrfHOdOI4H/vXVHw8cs0GEL8QLHdTke 2vcmk/2y5KdEmElZj3ENYg7DNbXwuINSmjXwXuD2b58zktI8H+pLXi+lfuBksg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4g5qHT2NfDz1KNR for ; Thu, 30 Apr 2026 09:53:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 444fc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 30 Apr 2026 09:53:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 696d1590697e - stable/15 - tests/net/if_clone_test: Add a test for races between if_detach() and if_vmove_reclaim() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 696d1590697e9d4c0f07ce0a8d76a62bc77bdfd5 Auto-Submitted: auto-generated Date: Thu, 30 Apr 2026 09:53:25 +0000 Message-Id: <69f32695.444fc.65351d7f@gitrepo.freebsd.org> The branch stable/15 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=696d1590697e9d4c0f07ce0a8d76a62bc77bdfd5 commit 696d1590697e9d4c0f07ce0a8d76a62bc77bdfd5 Author: Zhenlei Huang AuthorDate: 2026-04-27 19:17:21 +0000 Commit: Zhenlei Huang CommitDate: 2026-04-30 09:52:01 +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 (cherry picked from commit f4be16983dea4904f85ac20e921ad2a8c18a0f79) --- 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