Date: Tue, 12 Sep 2006 12:39:10 +0100 (BST) From: Robert Watson <rwatson@FreeBSD.org> To: Mike Silbersack <silby@silby.com> Cc: cvs-src@FreeBSD.org, Gleb Smirnoff <glebius@FreeBSD.org>, Ruslan Ermilov <ru@FreeBSD.org>, cvs-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: cvs commit: src/sys/netinet in_pcb.c tcp_subr.c tcp_timer.c tcp_var.h Message-ID: <20060912123406.P83151@fledge.watson.org> In-Reply-To: <20060912001916.S43498@odysseus.silby.com> References: <200609061356.k86DuZ0w016069@repoman.freebsd.org> <20060906091204.B6691@odysseus.silby.com> <20060906143204.GQ40020@FreeBSD.org> <20060906093553.L6691@odysseus.silby.com> <20060906150506.GA7069@rambler-co.ru> <20060911005435.A23530@odysseus.silby.com> <20060911142703.GF27667@FreeBSD.org> <20060912001916.S43498@odysseus.silby.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 12 Sep 2006, Mike Silbersack wrote: > On Mon, 11 Sep 2006, Gleb Smirnoff wrote: > >> The UMA zone can't be made smaller than it is, while IP port ranges can >> vary in both directions. > > Hm, it can't be made smaller because we're using UMA_ZONE_NOFREE... why are > we using that? Shouldn't locking handle that, rwatson? :) This is necessary due to the sysctl monitoring model. If you read the sysctl code for various socket types closely, you'll see that it builds a list of pointers to sockets to export data on, but because the quantity of data may be significant, it releases the global pcb list lock for the protocol after building the list. This is alright because the memory is type-stable, and because of the generation counter. Stephan and I have been discussing removing this, but have been working our way through some other issues first. However, if we do remove it, an alternative approach is needed to dealing with very large socket lists. We would both like to be able to reclaim pcb memory, though. Robert N M Watson Computer Laboratory University of Cambridge
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060912123406.P83151>