svn commit: r303848 - head/sys/netgraph

Gleb Smirnoff glebius at FreeBSD.org
Fri Aug 12 18:38:52 UTC 2016


  Hi!

  Sorry, I'm afraid this isn't a correct fix. Simply adding checks
against NULL to avoid panics at race conditions isn't a solution.

I can provide help with this problem. It must be related to my
callout changes, in case if this is a very recent problem.

Is it a recent problem or an old one?

On Mon, Aug 08, 2016 at 07:31:01PM +0000, Sean Bruno wrote:
S> Author: sbruno
S> Date: Mon Aug  8 19:31:01 2016
S> New Revision: 303848
S> URL: https://svnweb.freebsd.org/changeset/base/303848
S> 
S> Log:
S>   Avoid panic from ng_uncallout when unpluggin ethernet cable with active
S>   PPTP VPN connection.
S>   
S>   Submitted by:	Michael Zhilin <mizhka at gmail.com>
S>   Reviewed by:	ngie
S>   MFC after:	3 days
S>   Differential Revision:	https://reviews.freebsd.org/D7209
S> 
S> Modified:
S>   head/sys/netgraph/ng_base.c
S> 
S> Modified: head/sys/netgraph/ng_base.c
S> ==============================================================================
S> --- head/sys/netgraph/ng_base.c	Mon Aug  8 18:57:50 2016	(r303847)
S> +++ head/sys/netgraph/ng_base.c	Mon Aug  8 19:31:01 2016	(r303848)
S> @@ -3815,7 +3815,7 @@ ng_uncallout(struct callout *c, node_p n
S>  	item = c->c_arg;
S>  	/* Do an extra check */
S>  	if ((rval > 0) && (c->c_func == &ng_callout_trampoline) &&
S> -	    (NGI_NODE(item) == node)) {
S> +	    (item != NULL) && (NGI_NODE(item) == node)) {
S>  		/*
S>  		 * We successfully removed it from the queue before it ran
S>  		 * So now we need to unreference everything that was
S> _______________________________________________
S> svn-src-all at freebsd.org mailing list
S> https://lists.freebsd.org/mailman/listinfo/svn-src-all
S> To unsubscribe, send any mail to "svn-src-all-unsubscribe at freebsd.org"

-- 
Totus tuus, Glebius.


More information about the svn-src-all mailing list