From owner-freebsd-fs@FreeBSD.ORG Tue Mar 23 08:34:37 2010 Return-Path: Delivered-To: freebsd-fs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4BC9A1065688; Tue, 23 Mar 2010 08:34:37 +0000 (UTC) (envelope-from danny@cs.huji.ac.il) Received: from kabab.cs.huji.ac.il (kabab.cs.huji.ac.il [132.65.16.84]) by mx1.freebsd.org (Postfix) with ESMTP id E50258FC0A; Tue, 23 Mar 2010 08:34:36 +0000 (UTC) Received: from pampa.cs.huji.ac.il ([132.65.80.32]) by kabab.cs.huji.ac.il with esmtp id 1NtzZK-000O4D-Bh; Tue, 23 Mar 2010 10:34:34 +0200 X-Mailer: exmh version 2.7.2 01/07/2005 with nmh-1.2 To: Rick Macklem In-reply-to: References: <201003171120.o2HBK3CV082081@freefall.freebsd.org> <20100317113953.GA14582@icarus.home.lan> <86tys9eqo6.fsf@kopusha.onet> Comments: In-reply-to Rick Macklem message dated "Mon, 22 Mar 2010 20:48:50 -0400." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 23 Mar 2010 10:34:33 +0200 From: Daniel Braniss Message-ID: Cc: bug-followup@FreeBSD.org, freebsd-fs@FreeBSD.org, Kai Kockro Subject: Re: kern/144330: [nfs] mbuf leakage in nfsd with zfs X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Mar 2010 08:34:37 -0000 > > > On Mon, 22 Mar 2010, Daniel Braniss wrote: > > [good stuff snipped] > I only have a FreeBSD client at this point, and it doesn't cause the > leak for nfsv3,udp for me here. my client is also FreeBSD 8.0, strange > > Doug Rabson pointed out that there would be a leak for the "default:" > case too, although didn't know if that would occur in practice. it does! :-) > > So, maybe you could test this variant of the patch (just in case that > was the slow leak...): > --- rpc/svc.c.sav 2010-03-21 18:46:20.000000000 -0400 > +++ rpc/svc.c 2010-03-22 19:00:17.000000000 -0400 > @@ -819,9 +819,11 @@ > free(r->rq_addr, M_SONAME); > r->rq_addr = NULL; > } > + m_freem(args); > goto call_done; > > default: > + m_freem(args); > goto call_done; > } > } that plugged it! see ftp://ftp.cs.huji.ac.il/users/danny/freebsd/mbuf-leak/store-02+++.ps [...] > Thanks for the good testing. At least we're down to a slow leak..rick thanks to you for taking time off of your retirement :-) danny