From owner-freebsd-current@FreeBSD.ORG Mon Nov 7 20:54:24 2005 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from green.homeunix.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 2C83D16A420; Mon, 7 Nov 2005 20:54:24 +0000 (GMT) (envelope-from green@green.homeunix.org) Received: from green.homeunix.org (green@localhost [127.0.0.1]) by green.homeunix.org (8.13.4/8.13.1) with ESMTP id jA7KsNiL085952; Mon, 7 Nov 2005 15:54:23 -0500 (EST) (envelope-from green@green.homeunix.org) Received: (from green@localhost) by green.homeunix.org (8.13.4/8.13.1/Submit) id jA7KsMDL085951; Mon, 7 Nov 2005 15:54:22 -0500 (EST) (envelope-from green) Date: Mon, 7 Nov 2005 15:54:22 -0500 From: Brian Fundakowski Feldman To: Andre Oppermann Message-ID: <20051107205422.GD37350@green.homeunix.org> References: <20051104092724.GA33945@xor.obsecurity.org> <436B885B.6010609@freebsd.org> <20051104163526.GC82727@flame.pc> <200511041833.30955.thierry@herbelot.com> <436BA8B5.9070104@freebsd.org> <20051105003420.GM91530@cell.sick.ru> <20051105034105.GA906@flame.pc> <20051105080116.GR91530@cell.sick.ru> <20051105084924.GT91530@cell.sick.ru> <436D0C52.7A02137F@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <436D0C52.7A02137F@freebsd.org> User-Agent: Mutt/1.5.11 Cc: thierry@herbelot.com, sam@freebsd.org, Gleb Smirnoff , Giorgos Keramidas , freebsd-current@freebsd.org Subject: Re: panic: mb_dtor_pack: ref_cnt != 1 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Nov 2005 20:54:24 -0000 On Sat, Nov 05, 2005 at 08:47:30PM +0100, Andre Oppermann wrote: > Gleb Smirnoff wrote: > > > > On Sat, Nov 05, 2005 at 11:01:16AM +0300, Gleb Smirnoff wrote: > > T> On Sat, Nov 05, 2005 at 05:41:05AM +0200, Giorgos Keramidas wrote: > > T> G> On 2005-11-05 03:34, Gleb Smirnoff wrote: > > T> G> > Andre, Thierry, Sam, > > T> G> > > > T> G> > this patch should fix the problems > > T> G> > > T> G> But it panics in mb_dtor_pack() because ext_type != EXT_CLUSTER > > T> G> when my ath0 interface tries to associate with an AP. > > T> G> > > T> G> I had to change this too, to make things work: > > T> > > T> Updated patch. > > > > One more update. Since I have removed this block: > > > > if (*(m->m_ext.ref_cnt) == 0) > > *(m->m_ext.ref_cnt) = 1; > > > > I have also altered KASSERT in mb_dtor_pack(). I don't like > > inventing an incorrect invariant check and then adding helpers > > to avoid it being triggered. > > This block is still required for the packet zone as the refcount > is not re-initialized for mbuf+cluster out of the packet zone. > You may up with wrong refcounts if you remove this check. It > is not directly related to the KASSERT in mb_dtor_pack() but to > the way atomic_fetchadd_int() works in concurrency situations. > > I have committed a fix to the same effect as your proposed patch. > When UMA is fixed this may be reverted again. Could you submit a UMA bug report? There are a reasonable number of hackers around that can fix UMA/VM bugs. I wouldn't mind at trying my hand at one again these days. -- Brian Fundakowski Feldman \'[ FreeBSD ]''''''''''\ <> green@FreeBSD.org \ The Power to Serve! \ Opinions expressed are my own. \,,,,,,,,,,,,,,,,,,,,,,\