summaryrefslogtreecommitdiffstats
path: root/sys/rpc/svc.h
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2014-06-22 18:01:40 +0000
committermav <mav@FreeBSD.org>2014-06-22 18:01:40 +0000
commitad4e5fe06bf26964cbf5e3e5a1d6a6d85c9067c2 (patch)
tree0c21e786b3088670a512eab9e09a94fb59ed0c7d /sys/rpc/svc.h
parent6b3b15bb3a423532a03456e659c25bfa47c307ba (diff)
downloadFreeBSD-src-ad4e5fe06bf26964cbf5e3e5a1d6a6d85c9067c2.zip
FreeBSD-src-ad4e5fe06bf26964cbf5e3e5a1d6a6d85c9067c2.tar.gz
MFC r267221, r267278:
Introduce new per-thread lock to protect the list of requests. This allows to slightly simplify svc_run_internal() code: if we processed all the requests in a queue, then we know that new one will not appear.
Diffstat (limited to 'sys/rpc/svc.h')
-rw-r--r--sys/rpc/svc.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/rpc/svc.h b/sys/rpc/svc.h
index a7f5f51..108c3b1 100644
--- a/sys/rpc/svc.h
+++ b/sys/rpc/svc.h
@@ -291,6 +291,7 @@ STAILQ_HEAD(svc_reqlist, svc_req);
* thread to read and execute pending RPCs.
*/
typedef struct __rpc_svcthread {
+ struct mtx_padalign st_lock; /* protects st_reqs field */
struct __rpc_svcpool *st_pool;
SVCXPRT *st_xprt; /* transport we are processing */
struct svc_reqlist st_reqs; /* RPC requests to execute */
OpenPOWER on IntegriCloud