From owner-cvs-src@FreeBSD.ORG Wed Aug 11 18:09:22 2004 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C19D116A4CE for ; Wed, 11 Aug 2004 18:09:22 +0000 (GMT) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id EAD6F43D5D for ; Wed, 11 Aug 2004 18:09:21 +0000 (GMT) (envelope-from andre@freebsd.org) Received: (qmail 92496 invoked from network); 11 Aug 2004 18:03:17 -0000 Received: from unknown (HELO freebsd.org) ([62.48.0.53]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 11 Aug 2004 18:03:17 -0000 Message-ID: <411A60D4.7C25D34E@freebsd.org> Date: Wed, 11 Aug 2004 20:09:24 +0200 From: Andre Oppermann X-Mailer: Mozilla 4.8 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: Bosko Milekic References: <20040811175052.GA37093@freefall.freebsd.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/netinet ip_divert.c raw_ip.ctcp_hostcache.c tcp_subr.c tcp_syncache.c udp_usrreq.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Aug 2004 18:09:22 -0000 Bosko Milekic wrote: > > Please be careful here. The reason they were NOFREE before was because > the original zone code was implicitly nofree. If these structures need > to be type stable, then you just broke them with this commit. So are > you sure that they absolutely do not need to be type stable? In all cases the zone is used as kmalloc replacement. It always initializes a newly allocated object. It always unlinks the object from any lists before it uma_zfree's it. All such operations are covered by mutexes, no concurrent access should happen. If there is any use-after-free then it is a bug that needs to be fixed. I hope/guess that this sufficiently non-type-stable wrt UMA to remove NOFREE. -- Andre > -Bosko > > andre 2004-08-11 17:08:32 UTC > > FreeBSD src repository > > Modified files: > sys/netinet ip_divert.c raw_ip.c tcp_hostcache.c > tcp_subr.c tcp_syncache.c udp_usrreq.c > Log: > Remove the UMA_ZONE_NOFREE flag to all uma_zcreate() calls in the IP and > TCP code. This flag would have prevented giving back excessive free slabs > to the global pool after a transient peak usage.