diff options
author | mav <mav@FreeBSD.org> | 2009-01-08 17:51:15 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2009-01-08 17:51:15 +0000 |
commit | 8c23321acb993cc6cbb9f540aa6b10046d7e2dcf (patch) | |
tree | c3f646f79ca4e296534cea594a70302e7588de6c /sys/netgraph | |
parent | e7517d6bb24103fb7c7e868668180daa7c20e263 (diff) | |
download | FreeBSD-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.c | 3 |
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); } |