summaryrefslogtreecommitdiffstats
path: root/sys/netgraph
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2009-01-08 17:51:15 +0000
committermav <mav@FreeBSD.org>2009-01-08 17:51:15 +0000
commit8c23321acb993cc6cbb9f540aa6b10046d7e2dcf (patch)
treec3f646f79ca4e296534cea594a70302e7588de6c /sys/netgraph
parente7517d6bb24103fb7c7e868668180daa7c20e263 (diff)
downloadFreeBSD-src-8c23321acb993cc6cbb9f540aa6b10046d7e2dcf.zip
FreeBSD-src-8c23321acb993cc6cbb9f540aa6b10046d7e2dcf.tar.gz
Mark ng_vjc node as FORCE_WRITER to protect slcompress state.
I think it can be the reason of livelock in netgraph reported by some mpd users. MFC after: 3 days
Diffstat (limited to 'sys/netgraph')
-rw-r--r--sys/netgraph/ng_vjc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/netgraph/ng_vjc.c b/sys/netgraph/ng_vjc.c
index 5714ac0..797b995 100644
--- a/sys/netgraph/ng_vjc.c
+++ b/sys/netgraph/ng_vjc.c
@@ -249,6 +249,9 @@ ng_vjc_constructor(node_p node)
NG_NODE_SET_PRIVATE(node, priv);
+ /* slcompress is not thread-safe. Protect it's state here. */
+ NG_NODE_FORCE_WRITER(node);
+
/* Done */
return (0);
}
OpenPOWER on IntegriCloud