summaryrefslogtreecommitdiffstats
path: root/sys/rpc
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2014-12-27 00:55:14 +0000
committerkib <kib@FreeBSD.org>2014-12-27 00:55:14 +0000
commit38f7dd4bb8ccb6cb4ed506840f0c8d52fa87d499 (patch)
tree43d08c4b52a8e715790b7e3ff2f90ae29aa645b9 /sys/rpc
parente8e2e634b5ab8e91afb9b7f93c7f0ff096369abe (diff)
downloadFreeBSD-src-38f7dd4bb8ccb6cb4ed506840f0c8d52fa87d499.zip
FreeBSD-src-38f7dd4bb8ccb6cb4ed506840f0c8d52fa87d499.tar.gz
MFC r275745:
Add facility to stop all userspace processes. MFC r275753: Fix gcc build. MFC r275820: Add missed break.
Diffstat (limited to 'sys/rpc')
-rw-r--r--sys/rpc/svc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/rpc/svc.c b/sys/rpc/svc.c
index 75d9d6e..d2bd378 100644
--- a/sys/rpc/svc.c
+++ b/sys/rpc/svc.c
@@ -1190,7 +1190,8 @@ svc_run_internal(SVCGROUP *grp, bool_t ismaster)
mtx_unlock(&grp->sg_lock);
p = curproc;
PROC_LOCK(p);
- if (P_SHOULDSTOP(p)) {
+ if (P_SHOULDSTOP(p) ||
+ (p->p_flag & P_TOTAL_STOP) != 0) {
thread_suspend_check(0);
PROC_UNLOCK(p);
mtx_lock(&grp->sg_lock);
OpenPOWER on IntegriCloud