Date: Wed, 07 Jan 2015 22:32:08 +0100 From: Nikos Vassiliadis <nvass@gmx.com> To: Gleb Smirnoff <glebius@FreeBSD.org>, Craig Rodrigues <rodrigc@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r276747 - head/sys/netpfil/pf Message-ID: <54ADA5D8.8050504@gmx.com> In-Reply-To: <20150107204631.GG15484@FreeBSD.org> References: <201501060903.t06934qp081875@svn.freebsd.org> <20150107204631.GG15484@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, On 01/07/15 21:46, Gleb Smirnoff wrote: > On Tue, Jan 06, 2015 at 09:03:04AM +0000, Craig Rodrigues wrote: > C> Author: rodrigc > C> Date: Tue Jan 6 09:03:03 2015 > C> New Revision: 276747 > C> URL: https://svnweb.freebsd.org/changeset/base/276747 > C> > C> Log: > C> Instead of creating a purge thread for every vnet, create > C> a single purge thread and clean up all vnets from this thread. > C> > C> PR: 194515 > C> Differential Revision: D1315 > C> Submitted by: Nikos Vassiliadis <nvass@gmx.com> > > I am not sure that this is a good idea. The core idea of VNETs > is that they are isolated from each other. If we serialize purging, > then vnets are strongly affecting each other. That is true. > AFAIU, from the PR there is some panic fixed. What is the actual bug > and why couldn't it be fixed with having per-vnet thread? I don't remember the exact bug, this was written in summer of 2013, but the code that creates the threads seemed complex. The decision to use one thread was based on the fact that a lot of resources are used when a big number (100 let's say) of vnets is active. Purging already runs 10 times a second. Something between those two is better. Maybe, creating threads up to a certain number and above that map new vnets to existing threads? Nikos
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?54ADA5D8.8050504>