From nobody Sat Dec 6 19:59:12 2025 X-Original-To: dev-commits-src-main@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 4dNzbN5M19z6J3CC for ; Sat, 06 Dec 2025 19:59:12 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dNzbN21zZz3lc5 for ; Sat, 06 Dec 2025 19:59:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765051152; 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=qKCl+mGcBQUhMVlk/05tLcb1DHKHTz15Q7X3um05dRE=; b=vBxP4C/BK8qdRui9ylk/AvdFogvyW7o1nTcpd+zfS7DmwCxtKvR3Un4EVCCEnJW8QZOeR/ pxX1IikhxuQE708fYgYpyPpYyHDrfBA+XfHefX+18ZRDB9tUtDa0ptD11EunHcIryYRVAs rBSIvhgN6thlZf1+EYXxExUaVc5ZpvhXkRp1bgQ+ex/oIPOR6KpmnOIWWf04yifvGVgYdf r/HDTiwYNQGb+4qkxCNfc2Db5Rg7IJ9WXmpfhyEdvNyalUQJlxfPxZYpnTeNsBxU7WTSVX +33zd7ivFnimgW/EJ/fJI7/N3tEN02gcFXrg4cp3q+amhPi6VQEn6ctHeLfE4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765051152; 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=qKCl+mGcBQUhMVlk/05tLcb1DHKHTz15Q7X3um05dRE=; b=doIP5bETCnkzVRlVk8LJ+rL/9cv4N17TBG5ndfqJLt+BTg6dOjHHI6lG7UA89ZsBFGZSjo tWoeiyq3NADXUm7vxA702lW5trUIxpwoufvgLX8jGxFITLdBA7WJjGnFvv2z45PurlTFKU +Rd9G8l5IKGwYj2rNRT1J86/ZLvGgerV+uGDlzxdXFqDemTJtnyor03y5fTopePdclatW9 KINSmrt1oWAoCOMGIVhfSRDmhynSJG0e+H+aTFyt2IGwdKuPFgLug3WYReTRlJFsd6c46i 2P37S0enqK4xX8Ru94L+zyG6FhilbAw0ZD0kmwukqdsCVBpBer+LWS8FwzeFzg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765051152; a=rsa-sha256; cv=none; b=viNlkSFG/EjEN+de8zpwPn2OAPFV7CL/EOfH/r7M/jx5vzvI3AmmWpN8F1V7tXZSG1sTVz bLssogMOyr65Hqj40TdlcN2qnh8YcbLesUQf6UrRtzLUEnMaCzRXIg9PCGhXEwNJMkJYWi jV+80bbpqfu5ybKIS15K+c37t97XyQjBu71xHTJ5Aifa7swPVL6iig7GAF5pl4gsq60PK/ joKr7w5b2NFFBPWELFpjp1C7TSa86uy4aruHiL4bBSGYOllAcwD1UhxJgXi+JKR0dl6FHU 00W6pTSe2EZ2QGE89o5f4kX/faHtCz9CDjw8GzUN/4Dfv6VCoVvWgW1aGX3MDw== 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 4dNzbN1Wpjz19DL for ; Sat, 06 Dec 2025 19:59:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2c792 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 06 Dec 2025 19:59:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jonathan T. Looney Subject: git: 3f10e5985044 - main - ip6: Add explicit lock order information to catch LOR List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jtl X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3f10e5985044001a68761995474f1100aca648e1 Auto-Submitted: auto-generated Date: Sat, 06 Dec 2025 19:59:12 +0000 Message-Id: <69348b10.2c792.23204314@gitrepo.freebsd.org> The branch main has been updated by jtl: URL: https://cgit.FreeBSD.org/src/commit/?id=3f10e5985044001a68761995474f1100aca648e1 commit 3f10e5985044001a68761995474f1100aca648e1 Author: Jonathan T. Looney AuthorDate: 2025-12-05 17:34:31 +0000 Commit: Jonathan T. Looney CommitDate: 2025-12-06 19:58:46 +0000 ip6: Add explicit lock order information to catch LOR Over the past several years, we have had sporadic reports of a lock order reversal between the tcphash lock and the in6_ifaddr_lock. These seems to be hard to reproduce reliably, and the WITNESS backtrace points to code which uses the correct locking order. This commit adds the correct lock order explicitly to help us detect the call stack which uses the incorrect locking order. PR: 289184 Reported by: bz, gbe Reviewed by: bz, glebius Differential Revision: https://reviews.freebsd.org/D54088 --- sys/kern/subr_witness.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/kern/subr_witness.c b/sys/kern/subr_witness.c index c937f6a82757..abed76315c34 100644 --- a/sys/kern/subr_witness.c +++ b/sys/kern/subr_witness.c @@ -566,6 +566,12 @@ static struct witness_order_list_entry order_lists[] = { { "tcp", &lock_class_mtx_sleep }, { "so_snd", &lock_class_mtx_sleep }, { NULL, NULL }, + /* + * IPv6 Addr + */ + { "tcphash", &lock_class_mtx_sleep }, + { "in6_ifaddr_lock", &lock_class_rm }, + { NULL, NULL }, /* * BPF */