svn commit: r262196 - head/sys/netpfil/pf
Mikolaj Golub
trociny at FreeBSD.org
Wed Feb 19 18:49:06 UTC 2014
On Tue, Feb 18, 2014 at 10:17:12PM +0000, Martin Matuska wrote:
> Author: mm
> Date: Tue Feb 18 22:17:12 2014
> New Revision: 262196
> URL: http://svnweb.freebsd.org/changeset/base/262196
>
> Log:
> De-virtualize pf_mtag_z [1]
> Process V_pf_overloadqueue in vnet context [2]
Martin I saw you reverted it but it looks you are going to work on it
still, so one comment below.
...
> -SLIST_HEAD(pf_overload_head, pf_overload_entry);
> +struct pf_overload_head {
> + SLIST_HEAD(, pf_overload_entry) head;
> + struct vnet *vnet;
> +};
> static VNET_DEFINE(struct pf_overload_head, pf_overloadqueue);
> #define V_pf_overloadqueue VNET(pf_overloadqueue)
...
> - SLIST_INIT(&V_pf_overloadqueue);
> + SLIST_INIT(&V_pf_overloadqueue.head);
> TASK_INIT(&V_pf_overloadtask, 0, pf_overload_task, &V_pf_overloadqueue);
> + V_pf_overloadqueue.vnet = curvnet;
Why not pass vnet as a context to pf_overload_task instead of
&V_pf_overloadqueue? Then you would not need this hack with storing a
vnet inside a vnet variable.
--
Mikolaj Golub
More information about the svn-src-head
mailing list