From nobody Thu Jun 4 22:04:21 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 4gWdrj6XRdz6h2Mq for ; Thu, 04 Jun 2026 22:04:21 +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 4gWdrj5dnfz3VtJ for ; Thu, 04 Jun 2026 22:04:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780610661; 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=nX1tRBRD12fF2wg3KRTJZLk5WFlc017UcbrBKq3JB+U=; b=gHLkIs3V3Zeqz/1nuucTKa0Uhkx1ERA+rsXccuDMLUrqhjmFjtIC3xXz5cCXzKuP+TjSuX 9IMrZvrGxLV5PCx9v4kGz1A5myOIBv077Z3wMrmsWi5bMmaPRAVa7hNGOlkqJMnrSnvJEp 2kWZZxJ5lky4T7tL5hTB4GVO8gaTaz0SqU2v4yFGaCGDQH+Un3hB7lLiTW30CjmuC13KFg rs2KUhGtOcraAloOBsi9XNJxnW/xi7rUO2u2DKHziopleyT5bWPuosIFRhJcj1qHyG9z/S 6Zc3RrcycRytcvY2FwkUgTzh9mh0AHMr6PL+L8o/S25QR2yZxbhYubfZk1kKHQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1780610661; a=rsa-sha256; cv=none; b=JwbNmppoG5KNjB5QlSjOnZhSkTwNz1mBuZQ714cgfQorT5JZTFfqBYZUe7jIeQYSe4/tpi pmgIRVUAyOlxMNICexPl0EuTPNZcmSNo9LYcGbkRDlXLa0omusI1p2uOMbtTmaFsuxxWdC T776psfmQiSv/koHdh7VlbGUh4/wSf5gPupzY1102Jrc1YpcOq9WaT7KGBMD4qNkHDdKXX ghC5OWxVLz+4vymhK+RH7cIZfxCIO7dYYJyo+WUKn/gXiIvCBu1Tqi6C/ye3LNHGDkv4Ai AQDW1OaggtHmqO77v1sgd4X6U4OgKJCDVT/jKATVB9uj84ciNwuGMZj6dSInbw== 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=1780610661; 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=nX1tRBRD12fF2wg3KRTJZLk5WFlc017UcbrBKq3JB+U=; b=QiEiGavu4Fi0FCAk8KYk+whFwGHConet/899lil3Kqs1HkJW9Z/EBV2pFKmrooSIBW/B3A tqBAfjJANLoKiclFhxORuDpu8M+Oa79cdlrIbEyRAQUX9sJM4MnBx8oskVhy2eBN2/9f6l LoPlNgv5u3VYY1Wc7dWDvSv+tD+7dqLaZ46mi286ShGWfdyWoMJjYQckeMnmfISP4aJOeO Yu9rFitov6dA1j12twgmfLvXKeOgOlp2xlAmhtHO6N77BKwMjZ4gbaQbPRaxRl9nLd94zQ 6A5hKLpeNcVoI/CqXDlmfGygjTgr17cjuaLxp/uYSEPlg1rxUhXJ73XshNO24g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gWdrj5CVqz1FbC for ; Thu, 04 Jun 2026 22:04:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 4260e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 04 Jun 2026 22:04:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: ea4886f2829b - main - nfs_commonkrpc.c: Improve handling of NFSv4.1/4.2 recovery List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@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: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ea4886f2829bf33866c8c0c60b14a9641fc54b40 Auto-Submitted: auto-generated Date: Thu, 04 Jun 2026 22:04:21 +0000 Message-Id: <6a21f665.4260e.2d7ed2b6@gitrepo.freebsd.org> The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=ea4886f2829bf33866c8c0c60b14a9641fc54b40 commit ea4886f2829bf33866c8c0c60b14a9641fc54b40 Author: Rick Macklem AuthorDate: 2026-06-04 22:02:48 +0000 Commit: Rick Macklem CommitDate: 2026-06-04 22:02:48 +0000 nfs_commonkrpc.c: Improve handling of NFSv4.1/4.2 recovery Commit 4d80d4913e79 fixed a long standing bug in the recovery code. However. glebius@ reported seeing multiple recovery cycles with this patch during an NFSv4.1/4.2 server reboot. This commit should minimize the risk of multiple recovery cycles. PR: 294925 Reported by: Jov MFC after: 2 weeks Fixes: 4d80d4913e79 ("nfs: Fix argument typo to avoid a crash") --- sys/fs/nfs/nfs_commonkrpc.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/sys/fs/nfs/nfs_commonkrpc.c b/sys/fs/nfs/nfs_commonkrpc.c index 2d4c41994c0e..f30ae7cbffa2 100644 --- a/sys/fs/nfs/nfs_commonkrpc.c +++ b/sys/fs/nfs/nfs_commonkrpc.c @@ -1268,17 +1268,20 @@ tryagain: if (bcmp(sep->nfsess_sessionid, nd->nd_sessionid, NFSX_V4SESSIONID) == 0 && sep->nfsess_defunct == 0) { - printf("Initiate recovery. If server " - "has not rebooted, " - "check NFS clients for unique " - "/etc/hostid's\n"); /* Initiate recovery. */ sep->nfsess_defunct = 1; NFSCL_DEBUG(1, "Marked defunct\n"); - if (nmp->nm_clp != NULL) { + if (nmp->nm_clp != NULL && + (nmp->nm_clp->nfsc_flags & + (NFSCLFLAGS_RECVRINPROG | + NFSCLFLAGS_RECOVER)) == 0) { nmp->nm_clp->nfsc_flags |= NFSCLFLAGS_RECOVER; wakeup(nmp->nm_clp); + printf("Initiate recovery. If " + "server has not rebooted, " + "check NFS clients for " + "unique /etc/hostid's\n"); } } NFSUNLOCKCLSTATE();