Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Mar 2010 20:12:22 -0400 (EDT)
From:      Rick Macklem <rmacklem@uoguelph.ca>
To:        Mikolaj Golub <to.my.trociny@gmail.com>
Cc:        freebsd-fs@FreeBSD.org, Kai Kockro <kkockro@web.de>, bug-followup@FreeBSD.org
Subject:   Re: kern/144330: [nfs] mbuf leakage in nfsd with zfs
Message-ID:  <Pine.GSO.4.63.1003212005170.28991@muncher.cs.uoguelph.ca>
In-Reply-To: <86tys9eqo6.fsf@kopusha.onet>
References:  <201003171120.o2HBK3CV082081@freefall.freebsd.org> <20100317113953.GA14582@icarus.home.lan> <Pine.GSO.4.63.1003171844120.20254@muncher.cs.uoguelph.ca> <86tys9eqo6.fsf@kopusha.onet>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sun, 21 Mar 2010, Mikolaj Golub wrote:

[good stuff snipped]
>
> Athough it might be another issue then reported in this pr :-).
>

I think it's the same one, since disabling the replay cache made the
leak go away.

> Reviewing rpc/svc.c:svc_getreq() it looks for me that for RS_DONE case args
> are nevere freed. Shouldn't it be like in the attached patch?
>
Good catch!! It certainly looks like what would have caused the leak
to me. Since r_args has not been set to args for that case, svc_freereq()
wouldn't free args, just as you observed.

Hopefully Jeremy can test this, but I suspect you've found/fixed the
culprit.

Sorry, I can't remember if you are a committer? (If not, I'll try and
get dfr to review it and then get it committed.)

Again, good job, rick
ps: I was looking for a leak of the copy in the cache and didn't think
     of the request coming in.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.63.1003212005170.28991>