svn commit: r254773 - head/sys/net

Mikolaj Golub trociny at FreeBSD.org
Sat Sep 7 15:30:37 UTC 2013


Hi,

On Sat, Aug 24, 2013 at 11:17:25AM +0000, Andre Oppermann wrote:
> Author: andre
> Date: Sat Aug 24 11:17:25 2013
> New Revision: 254773
> URL: http://svnweb.freebsd.org/changeset/base/254773
> 
> Log:
>   Resolve the confusion between the head_list and the hook list.
>   
>   The linked list of pfil hooks is changed to "chain" and this term
>   is applied consistently.  The head_list remains with "list" term.
>   
>   Add KASSERT to vnet_pfil_uninit().

...

>  vnet_pfil_uninit(const void *unused)
>  {
>  
> -	/*  XXX should panic if list is not empty */
> +	KASSERT(LIST_EMPTY(&V_pfil_head_list),
> +	    ("%s: pfil_head_list %p not empty", __func__, &V_pfil_head_list));
>  	PFIL_LOCK_DESTROY_REAL(&V_pfil_lock);
>  	return (0);
>  }
> 

It is triggered when destroying a vnet, due to inet/inet6 pfil hooks
are not being unregistered.

The attached patch fixes the issue for me. I am going to commit it if
there are no objections -- might the unregistration has been skipped
intentionally due to some unresolved issue?

-- 
Mikolaj Golub
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ip_input.pfil_head_unregister.1.patch
Type: text/x-diff
Size: 1140 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20130907/34bd3aac/attachment.patch>


More information about the svn-src-all mailing list