PERFORCE change 125520 for review

Julian Elischer julian at elischer.org
Mon Sep 17 11:04:10 PDT 2007


Marko Zec wrote:
> http://perforce.freebsd.org/chv.cgi?CH=125520
> 
> Change 125520 by zec at zec_tpx32 on 2007/08/21 23:51:39
> 
> 	Given that ng_pipe nodes can be connected into arbitrary
> 	topologies, and therefore it is possible for ngp_rcvdata()
> 	to be recursively called from a single thread, it is
> 	necessary to explicitly allow for the ng_pipe_giant mutex
> 	to be recursively acquireable.

OR use a different locking scheme.

i.e. reference counts or something.


> 
> Affected files ...
> 
> .. //depot/projects/vimage/src/sys/netgraph/ng_pipe.c#2 edit
> 
> Differences ...
> 
> ==== //depot/projects/vimage/src/sys/netgraph/ng_pipe.c#2 (text+ko) ====
> 
> @@ -1028,7 +1028,7 @@
>  			error = EEXIST; 
>  		else {
>  			mtx_init(&ng_pipe_giant, "ng_pipe_giant", NULL,
> -			    MTX_DEF);
> +			    MTX_DEF | MTX_RECURSE);
>  			LIST_INIT(&node_head);
>  			LIST_INIT(&hook_head);
>  			ds_handle = timeout((timeout_t *) &pipe_scheduler,



More information about the p4-projects mailing list