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;
 
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to