svn commit: r232558 - in releng/8.3/sys: i386/conf netgraph

Gleb Smirnoff glebius at FreeBSD.org
Mon Mar 5 18:15:55 UTC 2012


Author: glebius
Date: Mon Mar  5 18:15:54 2012
New Revision: 232558
URL: http://svn.freebsd.org/changeset/base/232558

Log:
  Merge r232556 from stable/8 (r231761 from head):
    In ng_bypass() add more protection against potential race
    with ng_rmnode() and its followers.
  
  Approved by:	re (kib)

Modified:
  releng/8.3/sys/netgraph/ng_base.c
Directory Properties:
  releng/8.3/sys/   (props changed)
  releng/8.3/sys/amd64/include/xen/   (props changed)
  releng/8.3/sys/boot/   (props changed)
  releng/8.3/sys/cddl/contrib/opensolaris/   (props changed)
  releng/8.3/sys/contrib/dev/acpica/   (props changed)
  releng/8.3/sys/contrib/pf/   (props changed)
  releng/8.3/sys/dev/e1000/   (props changed)
  releng/8.3/sys/i386/conf/XENHVM   (props changed)

Modified: releng/8.3/sys/netgraph/ng_base.c
==============================================================================
--- releng/8.3/sys/netgraph/ng_base.c	Mon Mar  5 17:58:58 2012	(r232557)
+++ releng/8.3/sys/netgraph/ng_base.c	Mon Mar  5 18:15:54 2012	(r232558)
@@ -1169,6 +1169,10 @@ ng_bypass(hook_p hook1, hook_p hook2)
 		return (EINVAL);
 	}
 	mtx_lock(&ng_topo_mtx);
+	if (NG_HOOK_NOT_VALID(hook1) || NG_HOOK_NOT_VALID(hook2)) {
+		mtx_unlock(&ng_topo_mtx);
+		return (EINVAL);
+	}
 	hook1->hk_peer->hk_peer = hook2->hk_peer;
 	hook2->hk_peer->hk_peer = hook1->hk_peer;
 


More information about the svn-src-all mailing list