Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4628020pxj; Wed, 12 May 2021 09:33:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx5UFQkZJW0k6VuhL2GE3kHJMDvF/+KPSYLT9os+6LPAzC+xO/KNEqvxdfdJw5piJMvfZ+H X-Received: by 2002:a2e:a442:: with SMTP id v2mr29648267ljn.407.1620837212703; Wed, 12 May 2021 09:33:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620837212; cv=none; d=google.com; s=arc-20160816; b=opaRr6wncCDkAsXpTilOPVFL/DLO51gBQ04wM3SR66aDP7zzI/22qIY988/38rga7r PKWUR19vUinOO0z3FUT2y98q+uwh24Mh2wcW4mY+GIsT4FQzHIeSokdpf0qA23qqpGt7 EUw6wtn1zUgUFFUnL1RctZfqBl+iEZ/dXk6VprqBd9vUkGwOHr4aJbzp38/Os7o7eZt1 0IoZTQHKbFwYyzsODxy6aRlLEj1okJg4M4l/4gUInCL+RGgYyY48RRzzH7HvXtjfGKTL oQlWx7Fw76PglShLPGGgxw80TgGbg8B/Io8DDcXYUx5r04s4zZRgN++iGZ+bP6ajwG6f z/vQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:cc:to:from :subject; bh=d495Ng3ccsEgbdyVgKy88LkG8SbgjOZ1ATvkQckZfI0=; b=v3UBmp6Id+d0NW5gqlfE31NKyHIe81KCaSjCsHBgaJQtSzybJXvelXyszKg1IRl0G9 ZbQz3BlHivy+En4n+uAmulOOmAxVqEwhCbaKO+DFNHR/gLcalTP4oAQ2dy+W22T/Vun8 mb1dPFNh5BsWy88s9o75itVUPDWQDh4DYzjAwH850GopfE09c96phrGvzhSfs8Mkj/o9 xOXbQSdjN5DhsjjshQbCMYx3GlUVBwkwtRMZ6LrMEDl/PXnYSX443jRbXfil7IUn1I7R FyzP2THg0sA5eyJ8C5NJ0reibmPk2P5mSZllw6k1y4eRgo92VhrD36M5K0suvYepZw1b 8oWA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=oracle.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v21si291284ljj.282.2021.05.12.09.33.04; Wed, 12 May 2021 09:33:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=oracle.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235063AbhELQcx (ORCPT + 99 others); Wed, 12 May 2021 12:32:53 -0400 Received: from mail.kernel.org ([198.145.29.99]:34570 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239100AbhELQHT (ORCPT ); Wed, 12 May 2021 12:07:19 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 7866A61C43; Wed, 12 May 2021 15:36:15 +0000 (UTC) Subject: [PATCH v2 12/25] NFSD: Add tracepoints for EXCHANGEID edge cases From: Chuck Lever To: linux-nfs@vger.kernel.org Cc: dwysocha@redhat.com, bfields@fieldses.org, rostedt@goodmis.org Date: Wed, 12 May 2021 11:36:14 -0400 Message-ID: <162083377456.3108.10014302155237911416.stgit@klimt.1015granger.net> In-Reply-To: <162083366966.3108.12581818416105328952.stgit@klimt.1015granger.net> References: <162083366966.3108.12581818416105328952.stgit@klimt.1015granger.net> User-Agent: StGit/1.1 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org Some of the most common cases are traced. Enough infrastructure is now in place that more can be added later, as needed. Signed-off-by: Chuck Lever --- fs/nfsd/nfs4state.c | 12 +++++++++--- fs/nfsd/trace.h | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index e38cf9c236f1..ad0139b6df15 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c @@ -3178,6 +3178,7 @@ nfsd4_exchange_id(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, } /* case 6 */ exid->flags |= EXCHGID4_FLAG_CONFIRMED_R; + trace_nfsd_clid_confirmed_r(conf); goto out_copy; } if (!creds_match) { /* case 3 */ @@ -3190,6 +3191,7 @@ nfsd4_exchange_id(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, } if (verfs_match) { /* case 2 */ conf->cl_exchange_flags |= EXCHGID4_FLAG_CONFIRMED_R; + trace_nfsd_clid_confirmed_r(conf); goto out_copy; } /* case 5, client reboot */ @@ -3203,11 +3205,13 @@ nfsd4_exchange_id(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, goto out; } - unconf = find_unconfirmed_client_by_name(&exid->clname, nn); + unconf = find_unconfirmed_client_by_name(&exid->clname, nn); if (unconf) /* case 4, possible retry or client restart */ unhash_client_locked(unconf); - /* case 1 (normal case) */ + /* case 1, new owner ID */ + trace_nfsd_clid_fresh(new); + out_new: if (conf) { status = mark_client_expired_locked(conf); @@ -3236,8 +3240,10 @@ nfsd4_exchange_id(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, out_nolock: if (new) expire_client(new); - if (unconf) + if (unconf) { + trace_nfsd_clid_expire_unconf(&unconf->cl_clientid); expire_client(unconf); + } return status; } diff --git a/fs/nfsd/trace.h b/fs/nfsd/trace.h index 2be1881f05e6..7de8ca581c5d 100644 --- a/fs/nfsd/trace.h +++ b/fs/nfsd/trace.h @@ -633,6 +633,7 @@ DEFINE_EVENT(nfsd_clid_class, nfsd_clid_##name, \ TP_ARGS(clp)) DEFINE_CLID_EVENT(fresh); +DEFINE_CLID_EVENT(confirmed_r); /* * from fs/nfsd/filecache.h