SUNRPC: Simplify synopsis of svc_pool_for_cpu()
authorChuck Lever <chuck.lever@oracle.com>
Tue, 10 May 2022 15:45:53 +0000 (11:45 -0400)
committerChuck Lever <chuck.lever@oracle.com>
Thu, 19 May 2022 16:25:40 +0000 (12:25 -0400)
Clean up: There is one caller. The @cpu argument can be made
implicit now that a get_cpu/put_cpu pair is no longer needed.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
include/linux/sunrpc/svc.h
net/sunrpc/svc.c
net/sunrpc/svc_xprt.c

index b73704f..daecb00 100644 (file)
@@ -504,7 +504,7 @@ int            svc_register(const struct svc_serv *, struct net *, const int,
 
 void              svc_wake_up(struct svc_serv *);
 void              svc_reserve(struct svc_rqst *rqstp, int space);
-struct svc_pool *  svc_pool_for_cpu(struct svc_serv *serv, int cpu);
+struct svc_pool   *svc_pool_for_cpu(struct svc_serv *serv);
 char *            svc_print_addr(struct svc_rqst *, char *, size_t);
 const char *      svc_proc_name(const struct svc_rqst *rqstp);
 int               svc_encode_result_payload(struct svc_rqst *rqstp,
index 5570040..56bed0a 100644 (file)
@@ -356,15 +356,21 @@ svc_pool_map_set_cpumask(struct task_struct *task, unsigned int pidx)
        }
 }
 
-/*
- * Use the mapping mode to choose a pool for a given CPU.
- * Used when enqueueing an incoming RPC.  Always returns
- * a non-NULL pool pointer.
+/**
+ * svc_pool_for_cpu - Select pool to run a thread on this cpu
+ * @serv: An RPC service
+ *
+ * Use the active CPU and the svc_pool_map's mode setting to
+ * select the svc thread pool to use. Once initialized, the
+ * svc_pool_map does not change.
+ *
+ * Return value:
+ *   A pointer to an svc_pool
  */
-struct svc_pool *
-svc_pool_for_cpu(struct svc_serv *serv, int cpu)
+struct svc_pool *svc_pool_for_cpu(struct svc_serv *serv)
 {
        struct svc_pool_map *m = &svc_pool_map;
+       int cpu = raw_smp_processor_id();
        unsigned int pidx = 0;
 
        if (serv->sv_nrpools <= 1)
index 66cf720..5df90bc 100644 (file)
@@ -460,7 +460,7 @@ void svc_xprt_enqueue(struct svc_xprt *xprt)
        if (test_and_set_bit(XPT_BUSY, &xprt->xpt_flags))
                return;
 
-       pool = svc_pool_for_cpu(xprt->xpt_server, raw_smp_processor_id());
+       pool = svc_pool_for_cpu(xprt->xpt_server);
 
        atomic_long_inc(&pool->sp_stats.packets);