linux-nfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: bfields@fieldses.org (J. Bruce Fields)
To: Chuck Lever <chuck.lever@oracle.com>
Cc: linux-nfs@vger.kernel.org, simo@redhat.com
Subject: Re: [PATCH RFC 01/10] SUNRPC: Remove some dprintk() call sites from auth functions
Date: Mon, 4 Feb 2019 14:04:14 -0500	[thread overview]
Message-ID: <20190204190414.GA1816@fieldses.org> (raw)
In-Reply-To: <20190201195731.11389.69008.stgit@manet.1015granger.net>

On Fri, Feb 01, 2019 at 02:57:31PM -0500, Chuck Lever wrote:
> Clean up: Reduce dprintk noise by removing dprintk() call sites
> from hot path that do not report exceptions. These are usually
> replaceable with function graph tracing.

Yeah, dprintk's sometimes much to verbose to be useful, thanks for
looking at this.  How are you deciding what the hot paths are?

--b.

> 
> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
> ---
>  net/sunrpc/auth.c      |   29 -----------------------------
>  net/sunrpc/auth_unix.c |    9 +--------
>  2 files changed, 1 insertion(+), 37 deletions(-)
> 
> diff --git a/net/sunrpc/auth.c b/net/sunrpc/auth.c
> index 8dfab61..275e84e 100644
> --- a/net/sunrpc/auth.c
> +++ b/net/sunrpc/auth.c
> @@ -17,10 +17,6 @@
>  #include <linux/sunrpc/gss_api.h>
>  #include <linux/spinlock.h>
>  
> -#if IS_ENABLED(CONFIG_SUNRPC_DEBUG)
> -# define RPCDBG_FACILITY	RPCDBG_AUTH
> -#endif
> -
>  #define RPC_CREDCACHE_DEFAULT_HASHBITS	(4)
>  struct rpc_cred_cache {
>  	struct hlist_head	*hashtable;
> @@ -267,8 +263,6 @@ static int param_get_hashtbl_sz(char *buffer, const struct kernel_param *kp)
>  		}
>  	}
>  	rcu_read_unlock();
> -
> -	dprintk("RPC:       %s returns %d\n", __func__, result);
>  	return result;
>  }
>  EXPORT_SYMBOL_GPL(rpcauth_list_flavors);
> @@ -636,9 +630,6 @@ struct rpc_cred *
>  	struct rpc_cred *ret;
>  	const struct cred *cred = current_cred();
>  
> -	dprintk("RPC:       looking up %s cred\n",
> -		auth->au_ops->au_name);
> -
>  	memset(&acred, 0, sizeof(acred));
>  	acred.cred = cred;
>  	ret = auth->au_ops->lookup_cred(auth, &acred, flags);
> @@ -670,8 +661,6 @@ struct rpc_cred *
>  	};
>  	struct rpc_cred *ret;
>  
> -	dprintk("RPC: %5u looking up %s cred\n",
> -		task->tk_pid, task->tk_client->cl_auth->au_ops->au_name);
>  	ret = auth->au_ops->lookup_cred(auth, &acred, lookupflags);
>  	put_cred(acred.cred);
>  	return ret;
> @@ -688,8 +677,6 @@ struct rpc_cred *
>  
>  	if (!acred.principal)
>  		return NULL;
> -	dprintk("RPC: %5u looking up %s machine cred\n",
> -		task->tk_pid, task->tk_client->cl_auth->au_ops->au_name);
>  	return auth->au_ops->lookup_cred(auth, &acred, lookupflags);
>  }
>  
> @@ -698,8 +685,6 @@ struct rpc_cred *
>  {
>  	struct rpc_auth *auth = task->tk_client->cl_auth;
>  
> -	dprintk("RPC: %5u looking up %s cred\n",
> -		task->tk_pid, auth->au_ops->au_name);
>  	return rpcauth_lookupcred(auth, lookupflags);
>  }
>  
> @@ -776,9 +761,6 @@ struct rpc_cred *
>  {
>  	struct rpc_cred	*cred = task->tk_rqstp->rq_cred;
>  
> -	dprintk("RPC: %5u marshaling %s cred %p\n",
> -		task->tk_pid, cred->cr_auth->au_ops->au_name, cred);
> -
>  	return cred->cr_ops->crmarshal(task, p);
>  }
>  
> @@ -787,9 +769,6 @@ struct rpc_cred *
>  {
>  	struct rpc_cred	*cred = task->tk_rqstp->rq_cred;
>  
> -	dprintk("RPC: %5u validating %s cred %p\n",
> -		task->tk_pid, cred->cr_auth->au_ops->au_name, cred);
> -
>  	return cred->cr_ops->crvalidate(task, p);
>  }
>  
> @@ -808,8 +787,6 @@ static void rpcauth_wrap_req_encode(kxdreproc_t encode, struct rpc_rqst *rqstp,
>  {
>  	struct rpc_cred *cred = task->tk_rqstp->rq_cred;
>  
> -	dprintk("RPC: %5u using %s cred %p to wrap rpc data\n",
> -			task->tk_pid, cred->cr_ops->cr_name, cred);
>  	if (cred->cr_ops->crwrap_req)
>  		return cred->cr_ops->crwrap_req(task, encode, rqstp, data, obj);
>  	/* By default, we encode the arguments normally. */
> @@ -833,8 +810,6 @@ static void rpcauth_wrap_req_encode(kxdreproc_t encode, struct rpc_rqst *rqstp,
>  {
>  	struct rpc_cred *cred = task->tk_rqstp->rq_cred;
>  
> -	dprintk("RPC: %5u using %s cred %p to unwrap rpc data\n",
> -			task->tk_pid, cred->cr_ops->cr_name, cred);
>  	if (cred->cr_ops->crunwrap_resp)
>  		return cred->cr_ops->crunwrap_resp(task, decode, rqstp,
>  						   data, obj);
> @@ -865,8 +840,6 @@ static void rpcauth_wrap_req_encode(kxdreproc_t encode, struct rpc_rqst *rqstp,
>  			goto out;
>  		cred = task->tk_rqstp->rq_cred;
>  	}
> -	dprintk("RPC: %5u refreshing %s cred %p\n",
> -		task->tk_pid, cred->cr_auth->au_ops->au_name, cred);
>  
>  	err = cred->cr_ops->crrefresh(task);
>  out:
> @@ -880,8 +853,6 @@ static void rpcauth_wrap_req_encode(kxdreproc_t encode, struct rpc_rqst *rqstp,
>  {
>  	struct rpc_cred *cred = task->tk_rqstp->rq_cred;
>  
> -	dprintk("RPC: %5u invalidating %s cred %p\n",
> -		task->tk_pid, cred->cr_auth->au_ops->au_name, cred);
>  	if (cred)
>  		clear_bit(RPCAUTH_CRED_UPTODATE, &cred->cr_flags);
>  }
> diff --git a/net/sunrpc/auth_unix.c b/net/sunrpc/auth_unix.c
> index 387f6b3..fc8a591 100644
> --- a/net/sunrpc/auth_unix.c
> +++ b/net/sunrpc/auth_unix.c
> @@ -28,8 +28,6 @@
>  static struct rpc_auth *
>  unx_create(const struct rpc_auth_create_args *args, struct rpc_clnt *clnt)
>  {
> -	dprintk("RPC:       creating UNIX authenticator for client %p\n",
> -			clnt);
>  	refcount_inc(&unix_auth.au_count);
>  	return &unix_auth;
>  }
> @@ -37,7 +35,6 @@
>  static void
>  unx_destroy(struct rpc_auth *auth)
>  {
> -	dprintk("RPC:       destroying UNIX authenticator %p\n", auth);
>  }
>  
>  /*
> @@ -48,10 +45,6 @@
>  {
>  	struct rpc_cred *ret = mempool_alloc(unix_pool, GFP_NOFS);
>  
> -	dprintk("RPC:       allocating UNIX cred for uid %d gid %d\n",
> -			from_kuid(&init_user_ns, acred->cred->fsuid),
> -			from_kgid(&init_user_ns, acred->cred->fsgid));
> -
>  	rpcauth_init_cred(ret, acred, auth, &unix_credops);
>  	ret->cr_flags = 1UL << RPCAUTH_CRED_UPTODATE;
>  	return ret;
> @@ -61,7 +54,7 @@
>  unx_free_cred_callback(struct rcu_head *head)
>  {
>  	struct rpc_cred *rpc_cred = container_of(head, struct rpc_cred, cr_rcu);
> -	dprintk("RPC:       unx_free_cred %p\n", rpc_cred);
> +
>  	put_cred(rpc_cred->cr_cred);
>  	mempool_free(rpc_cred, unix_pool);
>  }

  reply	other threads:[~2019-02-04 19:04 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-01 19:57 [PATCH RFC 00/10] SUNRPC GSS overhaul Chuck Lever
2019-02-01 19:57 ` [PATCH RFC 01/10] SUNRPC: Remove some dprintk() call sites from auth functions Chuck Lever
2019-02-04 19:04   ` J. Bruce Fields [this message]
2019-02-04 19:07     ` Chuck Lever
2019-02-01 19:57 ` [PATCH RFC 02/10] SUNRPC: Remove rpc_xprt::tsh_size Chuck Lever
2019-02-01 19:57 ` [PATCH RFC 03/10] SUNRPC: Add build option to disable support for insecure enctypes Chuck Lever
2019-02-01 19:57 ` [PATCH RFC 04/10] SUNRPC: Add common byte-swapped RPC header constants Chuck Lever
2019-02-02  2:30   ` Tom Talpey
2019-02-02 22:46     ` Chuck Lever
2019-02-03 15:00       ` Trond Myklebust
2019-02-03 16:49         ` Chuck Lever
2019-02-03 18:58           ` Trond Myklebust
2019-02-02 17:02   ` Christoph Hellwig
2019-02-02 22:49     ` Chuck Lever
2019-02-04  7:53       ` Christoph Hellwig
2019-02-04 14:16         ` Chuck Lever
2019-02-04 14:32           ` Christoph Hellwig
2019-02-04 14:56             ` Chuck Lever
2019-02-04 19:37               ` J. Bruce Fields
2019-02-05  1:57                 ` Tom Talpey
2019-02-01 19:57 ` [PATCH RFC 05/10] SUNRPC: Use struct xdr_stream when constructing RPC Call header Chuck Lever
2019-02-01 19:57 ` [PATCH RFC 06/10] SUNRPC: Clean up rpc_verify_header() Chuck Lever
2019-02-01 19:58 ` [PATCH RFC 07/10] SUNRPC: Use struct xdr_stream when decoding RPC Reply header Chuck Lever
2019-02-01 19:58 ` [PATCH RFC 08/10] SUNRPC: Introduce trace points in rpc_auth_gss.ko Chuck Lever
2019-02-01 19:58 ` [PATCH RFC 09/10] SUNRPC: Remove xdr_buf_trim() Chuck Lever
2019-02-04 19:46   ` J. Bruce Fields
2019-02-04 19:49     ` Chuck Lever
2019-02-04 20:00       ` Bruce Fields
2019-02-04 20:07         ` Chuck Lever
2019-02-04 20:11           ` Bruce Fields
2019-02-01 19:58 ` [PATCH RFC 10/10] SUNRPC: Add SPDX IDs to some net/sunrpc/auth_gss/ files Chuck Lever

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190204190414.GA1816@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=chuck.lever@oracle.com \
    --cc=linux-nfs@vger.kernel.org \
    --cc=simo@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).