From owner-freebsd-current@FreeBSD.ORG Thu Aug 6 20:28:40 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3B8091065672; Thu, 6 Aug 2009 20:28:40 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from esa-annu.mail.uoguelph.ca (esa-annu.mail.uoguelph.ca [131.104.91.36]) by mx1.freebsd.org (Postfix) with ESMTP id 509E78FC20; Thu, 6 Aug 2009 20:28:39 +0000 (UTC) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEACfaekqDaFvH/2dsb2JhbADRbYQYBQ X-IronPort-AV: E=Sophos;i="4.43,336,1246852800"; d="scan'208";a="41851973" Received: from danube.cs.uoguelph.ca ([131.104.91.199]) by esa-annu-pri.mail.uoguelph.ca with ESMTP; 06 Aug 2009 16:28:38 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by danube.cs.uoguelph.ca (Postfix) with ESMTP id 880761084AE5; Thu, 6 Aug 2009 16:28:38 -0400 (EDT) X-Virus-Scanned: amavisd-new at danube.cs.uoguelph.ca Received: from danube.cs.uoguelph.ca ([127.0.0.1]) by localhost (danube.cs.uoguelph.ca [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NrKxvFXlz6HD; Thu, 6 Aug 2009 16:28:37 -0400 (EDT) Received: from muncher.cs.uoguelph.ca (muncher.cs.uoguelph.ca [131.104.91.102]) by danube.cs.uoguelph.ca (Postfix) with ESMTP id 9928A1084AE4; Thu, 6 Aug 2009 16:28:37 -0400 (EDT) Received: from localhost (rmacklem@localhost) by muncher.cs.uoguelph.ca (8.11.7p3+Sun/8.11.6) with ESMTP id n76KWPI08083; Thu, 6 Aug 2009 16:32:25 -0400 (EDT) X-Authentication-Warning: muncher.cs.uoguelph.ca: rmacklem owned process doing -bs Date: Thu, 6 Aug 2009 16:32:25 -0400 (EDT) From: Rick Macklem X-X-Sender: rmacklem@muncher.cs.uoguelph.ca To: Julian Elischer In-Reply-To: <4A7B27DD.20503@elischer.org> Message-ID: References: <20090804225806.GA54680@hub.freebsd.org> <20090805054115.O93661@maildrop.int.zabbadoz.net> <20090805063417.GA10969@doormat.home> <4A7AF25D.40608@elischer.org> <4A7B27DD.20503@elischer.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Robert Watson , jeff@FreeBSD.org, "Bjoern A. Zeeb" , freebsd-current@FreeBSD.org, kib@FreeBSD.org, Navdeep Parhar , Larry Rosenman , lstewart@FreeBSD.org Subject: Re: reproducible panic in netisr 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: Thu, 06 Aug 2009 20:28:40 -0000 On Thu, 6 Aug 2009, Julian Elischer wrote: >> Righto, yes. So does that imply that the alignment provided by crget() >> { which uses malloc() } is sufficient for td->td_ucred or is td->td_ucred >> a special case? > > It should be enough. > Ok, that's good news. > > we should probably do the right thign refcount-wise for the ucred > but refcount (atomic) ops are expensive. > In the clnt_rc.c case, it does do a crdup(), although I think a crhold() would have been sufficient. In the nlm, there is a case where the mount point cred gets used without a crhold() and that does cause panics for pho@'s tests related to "umount -f". I have a fix for that one, which is waiting for a Doug R. review. (It only affects "umount -f", which I think still has other issues, so I haven't tried to push for it getting into head.) So, yes, I think that the refcount issue is being handled, rick