From nobody Sun Oct 11 03:05:39 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 4j2QTP1M8Zz6wJBD for ; Sun, 11 Oct 2026 03:05:45 +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 4j2QTN5Gwzz4Mby for ; Sun, 11 Oct 2026 03:05:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791687944; 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=afGMut5e5wZZU3129rstdjIagGCn9cusCn83QM3rNZM=; b=MtKdVaV1deb1cwppyHD77ClgN6k1oCzOVq+0f64uifWpzq8Yck5g/oQpdUo8JiJLUZrAAR SMxSQ/kZclflO8t9R2mC8jwXz1uQYjRCti+uUCHifHMchl7yWrHE81b90p66qHXCyDRug/ 0AwW0IDgd+xV3mDZZf6PRcRJy4ufMyHnTV2WD9JKy7kVyUopJwDbPTFCr5buFEnC4Sxf1A OV4LOE9I7hUqi76sGkgYFFlu4PqVewAMVwJRgcFxI5S1l+CvbAUK+RM/NdSzO5i5ZwyThU cgdNbgAtKgPsmkt+vb61X3C5uJLXG0Ln5lESPMnBkqxDakd0WcRtkJxtGswLKA== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1791687944; b=mdhy6tUXHFsUX5bKP2Phs1BXSvFMyNPCJhrp0TeIVEHi2eHdbquCqWKDWgJnGKbg4edNT2 uZ/gKvjud92yHAJE/FVmjcN7u79tIvhQxhyRTufxkQMHv4FLJyJhDDoFn432SGWwfzuw6G 41B6+bM2CWz7THlv+fxhYpVFeM4ffEcTYtfDZpwSGY/fPdM9xbkeMoa45ATbddFktPfkYL 9RhkbELzs6joS0mjRLhTQW9H6bdjpzHoTbeWupxkirMWzeAPvyu/oenY0DI4Wg+G3HHniF H+TKZUt/v7v4owLQAO3IE7JOFiIVhMftZAvLBD/eIdWaSBVXmWuupGKIsJzOaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791687944; 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=afGMut5e5wZZU3129rstdjIagGCn9cusCn83QM3rNZM=; b=PS0X80JB86+w1DS2w/sfLqThdAl+gE9x8OHhhJsN79J/ufVEQToXzgJ9r7+uwSYdxNLT/2 wzuspQPHqeVd1hs0zo6rusW1PByoS0n5m1WKyh0KE+BY9CiOC/lsOJ9I/IYUKzU2sfQzrS Lt3GuH0BlxBPlYJyeYMuOc/LCdPpUeG4dAGvU3BJFBuFnZKVH+Dm+t6aSdafjzTA5apved K5tppFXusKamPzJDjG+u1TCzT6u4lXKbwCLOZRjssVj3qGP4bVZcmsDIXy5ztnVj+RJqiy iPCO0dTFdZ6jZ+NSnTNOG/6VAnb/CIdrMgygzGIVgb6uv9zlu3VgbgMODFBhDg== 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 4j2QTN4JMHzMlQ for ; Sun, 11 Oct 2026 03:05:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3f75b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 11 Oct 2026 03:05:39 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: 4d015c4c3f94 - stable/14 - clnt_vc.c: Fix handling of backchannel xprt List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org List-Id: Commit messages for all branches of the src repository 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: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4d015c4c3f94494c05c1cad936dce6dab2501f21 Auto-Submitted: auto-generated Date: Sun, 11 Oct 2026 03:05:39 +0000 Message-Id: <6acafd03.3f75b.7c37b7e8@gitrepo.freebsd.org> The branch stable/14 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=4d015c4c3f94494c05c1cad936dce6dab2501f21 commit 4d015c4c3f94494c05c1cad936dce6dab2501f21 Author: Rick Macklem AuthorDate: 2026-10-04 20:29:43 +0000 Commit: Rick Macklem CommitDate: 2026-10-11 03:04:09 +0000 clnt_vc.c: Fix handling of backchannel xprt When clnt_vc_destroy() is called, it might not be the current connection. Without this patch, if it is not the current connection, xp_p2 is set NULL and xprt is released when it should not be released. This patch adds a check for "current connection" to fix the problem. Found during testing to the client RDMA code, but could happen for TCP as well. (cherry picked from commit 81a6514689cefdaa5c92b5539ae885ec8c6b3336) --- sys/rpc/clnt_vc.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sys/rpc/clnt_vc.c b/sys/rpc/clnt_vc.c index cc2471f95e8c..03fb27e8be36 100644 --- a/sys/rpc/clnt_vc.c +++ b/sys/rpc/clnt_vc.c @@ -865,6 +865,7 @@ clnt_vc_destroy(CLIENT *cl) struct socket *so = NULL; SVCXPRT *xprt; uint32_t reterr; + bool_t rlse; clnt_vc_close(cl); @@ -873,11 +874,16 @@ clnt_vc_destroy(CLIENT *cl) ct->ct_backchannelxprt = NULL; if (xprt != NULL) { mtx_unlock(&ct->ct_lock); /* To avoid a LOR. */ + rlse = FALSE; sx_xlock(&xprt->xp_lock); mtx_lock(&ct->ct_lock); - xprt->xp_p2 = NULL; + if (xprt->xp_p2 == ct) { + xprt->xp_p2 = NULL; + rlse = TRUE; + } sx_xunlock(&xprt->xp_lock); - SVC_RELEASE(xprt); + if (rlse) + SVC_RELEASE(xprt); } if (ct->ct_socket) {