From nobody Mon Sep 07 15:47:03 2026 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 4hdrzj5FNgz6rck9 for ; Mon, 07 Sep 2026 15:47:13 +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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hdrzc4KwJz3KYR for ; Mon, 07 Sep 2026 15:47:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1788796028; 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=JsC/X7iF5NWHVliVV2DLfZGtPrrSexjAaLw9rYgYyhk=; b=EpJHRW54gwbxMuFqyhuLK+3833+ue5PPHQlu/DshZcty+Peldp3gqOMX2XHFhzch+G9Wdt dP29Yehsd7Ps0ixcir1uS6c735BhQ4YWHzQO7jty39XK84ruu3MQq2cHlrz17j2Yvtz55E +llkBRVo1PzOYefjGVytg65p4qkCA7GpT2eV9R9ntggBBlfjLj1K8vn8kuIx11nK0tui+H Jq2qqanGlQq0SOiURqYjspUMaPBZg9qbQXxnGk/eXM6Jh4r5lZ87e6riACQpn+vW6ZA2s2 YxkLbM5hgVJo1YQkFbQDGds01ahTBuXPA4VmONxoETTIYFFN3aPSNH/mvNGCoQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1788796028; a=rsa-sha256; cv=none; b=aqDSdIRd/qKfb8wa+jARaqL5dlx9NeoDse3vcgj80xBlwZYGF6uIwzgF5zSSk9ngT+0KJH OdRLBFN5AXm2kxJTEhuLKNxK3XEwBEnEGsdiZbSCcfCUpsPZerEl1b9r2KrgyMymk/J2Bp MwUWRZseklFOIYOXYF2Gk43PFqaZ0b5/li4bKyXpMI7hx0MVdHviFERZzx0LlGzm6BPLll H/+56fBojbY8b+c3+N+Ex5LiEaDtXS/efTH7Fjx5rvSARVXYMO4u01eRrim+/tQwnlcpOC HrgDGbuFwG4UaVnzDqhyuVkYL347wGM4cpcMIFpJCzqfEbFSFWakCQKfBLzeaA== 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=1788796028; 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=JsC/X7iF5NWHVliVV2DLfZGtPrrSexjAaLw9rYgYyhk=; b=SWZn31VUFvpbAyiOA8bHgl8mhQimWRbk4AFJ//kOKVIr/KHII8xQiaiSR2uHgp6RAusJGp ZEPvYYZVbKJc+haY9iFIf38C4wfkSjtmiWOZ8vRExJ75jx6i9kLI3kKFP/52uVtORJXNPN h9VFffpNrmPJ7gIJuvM9Vwbjxq3GlLQZgvp7XUTl8iS6HpX9m7wZUeZGRDfWenq4FJ03mR MxjBqxaEIvr7Qj0lZenMNtw1hMcwHjBuMFztx1r2XhYOgjD5EXisF0XwGVEDMAnUJb+M4E /BXqgF1pmTiPxlsV9y8r+aVIW8u7MmVgSYWBaijpPHelQiuVaLur286xM/R/Zw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hdrzc3JNPz8TZ for ; Mon, 07 Sep 2026 15:47:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1e634 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 07 Sep 2026 15:47:03 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: c63c77b3a531 - main - vp_crossmp: weaken the assert and make it more precise 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 List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c63c77b3a5312dfd00f7749a07269119da886609 Auto-Submitted: auto-generated Date: Mon, 07 Sep 2026 15:47:03 +0000 Message-Id: <6a9edc77.1e634.65c5cc06@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=c63c77b3a5312dfd00f7749a07269119da886609 commit c63c77b3a5312dfd00f7749a07269119da886609 Author: Konstantin Belousov AuthorDate: 2026-09-06 15:11:41 +0000 Commit: Konstantin Belousov CommitDate: 2026-09-07 15:46:03 +0000 vp_crossmp: weaken the assert and make it more precise Since the vp_crossmp vnode can leak into vn_vptocnp() calls due to nullfs file mounting, not all lock requests are non-sleeping. The requirement for the crossmp locking is that all lock requests should be shared. Then, it does not matter if the requests allow sleeping, since all locks are shared. Also, check the lock type by correctly masking it with LK_TYPE_MASK. Reported and tested by: pho Reviewed by: jah, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D59468 --- sys/kern/vfs_lookup.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/vfs_lookup.c b/sys/kern/vfs_lookup.c index 57b536eab6ea..71d4d3f75721 100644 --- a/sys/kern/vfs_lookup.c +++ b/sys/kern/vfs_lookup.c @@ -133,7 +133,7 @@ crossmp_vop_lock1(struct vop_lock1_args *ap) lk = vp->v_vnlock; flags = ap->a_flags; - KASSERT((flags & (LK_SHARED | LK_NOWAIT)) == (LK_SHARED | LK_NOWAIT), + KASSERT((flags & LK_TYPE_MASK) == LK_SHARED, ("%s: invalid lock request 0x%x for crossmp", __func__, flags)); if ((flags & LK_INTERLOCK) != 0)