On Thu, Jun 06, 2013 at 12:35:33PM +0200, Nikos Vassiliadis wrote: > >> -VNET_DEFINE(u_long, pf_srchashsize); > >> -#define V_pf_srchashsize VNET(pf_srchashsize) > >> -SYSCTL_VNET_UINT(_net_pf, OID_AUTO, source_nodes_hashsize, CTLFLAG_RDTUN, > >> - &VNET_NAME(pf_srchashsize), 0, "Size of pf(4) source nodes > >> hashtable"); > >> +u_long pf_srchashsize; > >> +SYSCTL_UINT(_net_pf, OID_AUTO, source_nodes_hashsize, CTLFLAG_RDTUN, > >> + &pf_srchashsize, 0, "Size of pf(4) source nodes hashtable"); > >> > > > > Why do you have to devirtualize these variables? Are per vnet > > hashtables sizes not useful or do they cause issues? > > Per VNET variables are not useful for pf_hashsize and pf_srchashsize > since these values are RO and cannot be modified at runtime.
Indeed. I missed RDTUN flag. > module unload is broken:( Maybe it can be fixed at a (bit) later date? I don't think Gleb will be happy with this. Some time ago he removed some vimage related stuff to prevent crashing on module unload (see r229849). Actually your patch looks like a partial revert of that commit. So I think you need to think about this issue from start. At least it should not crash non-vimage kernel and there should be understanding how to fix it for vimage kernel. Your approach with keeping only one purge thread might make it simpler. -- Mikolaj Golub _______________________________________________ freebsd-virtualization@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization To unsubscribe, send any mail to "freebsd-virtualization-unsubscr...@freebsd.org"