diff options
author | 2016-12-20 21:15:36 +0000 | |
---|---|---|
committer | 2016-12-20 21:15:36 +0000 | |
commit | f4dec7a72f37f1d21e2f6a9f6949cc20729ace5c (patch) | |
tree | c7a6dfbc04c84c3d1374096a4661f4559b449302 /sys/kern/uipc_domain.c | |
parent | Tweak generated .c output so switch statements always have a (diff) | |
download | wireguard-openbsd-f4dec7a72f37f1d21e2f6a9f6949cc20729ace5c.tar.xz wireguard-openbsd-f4dec7a72f37f1d21e2f6a9f6949cc20729ace5c.zip |
Grab the NET_LOCK() in so{s,g}etopt(), pffasttimo() and pfslowtimo().
ok rzalamena@, bluhm@
Diffstat (limited to 'sys/kern/uipc_domain.c')
-rw-r--r-- | sys/kern/uipc_domain.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/sys/kern/uipc_domain.c b/sys/kern/uipc_domain.c index 34c7aa66e7f..7dd629f5e6e 100644 --- a/sys/kern/uipc_domain.c +++ b/sys/kern/uipc_domain.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uipc_domain.c,v 1.47 2016/12/20 18:33:43 bluhm Exp $ */ +/* $OpenBSD: uipc_domain.c,v 1.48 2016/12/20 21:15:36 mpi Exp $ */ /* $NetBSD: uipc_domain.c,v 1.14 1996/02/09 19:00:44 christos Exp $ */ /* @@ -99,8 +99,8 @@ domaininit(void) max_linkhdr = 64; max_hdr = max_linkhdr + max_protohdr; - timeout_set(&pffast_timeout, pffasttimo, &pffast_timeout); - timeout_set(&pfslow_timeout, pfslowtimo, &pfslow_timeout); + timeout_set_proc(&pffast_timeout, pffasttimo, &pffast_timeout); + timeout_set_proc(&pfslow_timeout, pfslowtimo, &pfslow_timeout); timeout_add(&pffast_timeout, 1); timeout_add(&pfslow_timeout, 1); } @@ -246,13 +246,13 @@ pfslowtimo(void *arg) struct protosw *pr; int i, s; - s = splsoftnet(); + NET_LOCK(s); for (i = 0; (dp = domains[i]) != NULL; i++) { for (pr = dp->dom_protosw; pr < dp->dom_protoswNPROTOSW; pr++) if (pr->pr_slowtimo) (*pr->pr_slowtimo)(); } - splx(s); + NET_UNLOCK(s); timeout_add_msec(to, 500); } @@ -264,12 +264,12 @@ pffasttimo(void *arg) struct protosw *pr; int i, s; - s = splsoftnet(); + NET_LOCK(s); for (i = 0; (dp = domains[i]) != NULL; i++) { for (pr = dp->dom_protosw; pr < dp->dom_protoswNPROTOSW; pr++) if (pr->pr_fasttimo) (*pr->pr_fasttimo)(); } - splx(s); + NET_UNLOCK(s); timeout_add_msec(to, 200); } |