From nobody Sun Oct 11 03:05:39 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 4j2QTJ19vrz6wJH5 for ; Sun, 11 Oct 2026 03:05:40 +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 4j2QTH644vz4MSq for ; Sun, 11 Oct 2026 03:05:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791687940; 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=T85DDGtnSWS4tTvbLEFSXDdi7Uffs0CxYP0zDGEpm6Rm7lG9VFJiNcdcUxqGyiNxQHKPar B5WJd3uB/jX1v/xH8L05v7CDrQ+vmiMIng1JhJAmVDvBocqMwmY1098nVjlg06Zez3IYBA qBlh8Md3cqjiq+TKpHT/GTCB9yzXd2dg3rIh2ec7WmPj7IqVkS9OsqmsGElLqYmIDMlmG8 uH4kWbojeecPdqR5Zo3KrB5wKg7AAWbYcNdby3Mc+VcI6JN0EpBKMROGsfNeZRIjl8bZUs 67t3Wu8F0NGqi8aKssW6U43E+TUxDdzppxQFg4fbcqllrC0VyicXF1FVsy7XBQ== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1791687940; b=DotMrRgtsDytfpTf1oMhGpwuiqRCTaFWUfT3Rzd4dr5IPsLWSGrt4R6wSvBNJ9z/SOCsPV emxpNQdJYE5xwsJooJqnWtPPzTbiUnp1AqxL38krxJVI9EYZRJ7tFj7zR/mH5BJE5ApWKL I3pOifJTCb27/44GqSMWNVX1UL2cdOWYrI91fjHzQRidGErACU0Z1lU7AL4Ttfi4voOnZS yNEAaFGbxpcbLljWitQMUddHIdzy2NwfnqCcn8yIZ4okpd2WzeeQJ0YP8fenpAvH00ogDw sqd5ouhfWPcodXBoFyamDVUIMzQJYu4dbezXToQr+Uw4BCKvspaGHypF+xrTTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791687940; 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=a4Y5AwfghnKoEUu6F9JxCyW4TkTY5M9IBcph8cVzdE54OsajDa+c/jyGvg2iMaMyTyCvp0 w6s5eyWrlFjbjtPjhCaUwdN3u+RITVyLJSJ9c5LNArkUoQfhV1gG22vuhz2T+x6MtvDOvQ lVMGo/Bw6d29gdRJ5CqDH2dIaxGGJXUD9vVCy1azFq7LRpbC23rQKmmt5+TCOaZWNi3J7S /GQNDZuWOy0x09TNBJdWBNczPlMu8l5g8wlKnVXFgJhrwy+LfwNjLp6S/bXj1EqBZCH/4U VptVdqlp9m/VFzc5gft8qMjfhT22YJ2IKfkYv1BZusdnNG1UYdGS12jYLFr6fg== 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 4j2QTH4GY3zMmD for ; Sun, 11 Oct 2026 03:05:39 +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-branches X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org List-Id: Commits to the stable branches of the FreeBSD 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) {