[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <13A4AF36-1649-41C0-A789-DC35853D2FB1@redhat.com>
Date: Tue, 02 Jul 2019 07:23:32 -0400
From: "Benjamin Coddington" <bcodding@...hat.com>
To: "Eric Biggers" <ebiggers@...nel.org>
Cc: syzbot <syzbot+7fe11b49c1cc30e3fce2@...kaller.appspotmail.com>,
anna.schumaker@...app.com, linux-kernel@...r.kernel.org,
linux-nfs@...r.kernel.org, syzkaller-bugs@...glegroups.com,
trond.myklebust@...merspace.com
Subject: Re: memory leak in nfs_get_client
On 2 Jul 2019, at 2:31, Eric Biggers wrote:
> On Tue, Jun 11, 2019 at 12:23:12PM -0400, Benjamin Coddington wrote:
>> Ugh.. Now that you can cancel the wait, you have to also handle if
>> "new" was
>> allocated. I think this needs:
>>
>> diff --git a/fs/nfs/client.c b/fs/nfs/client.c
>> index d7e4f0848e28..4d90f5bf0b0a 100644
>> --- a/fs/nfs/client.c
>> +++ b/fs/nfs/client.c
>> @@ -406,10 +406,10 @@ struct nfs_client *nfs_get_client(const struct
>> nfs_client_initdata *cl_init)
>> clp = nfs_match_client(cl_init);
>> if (clp) {
>> spin_unlock(&nn->nfs_client_lock);
>> - if (IS_ERR(clp))
>> - return clp;
>> if (new)
>> new->rpc_ops->free_client(new);
>> + if (IS_ERR(clp))
>> + return clp;
>> return nfs_found_client(cl_init, clp);
>> }
>> if (new) {
>>
>> I'll patch/test and send it along.
>>
>> Ben
>
> Hi Ben, what happened to this patch?
I sent it along:
https://lore.kernel.org/linux-nfs/65b675cec79d140df64bc30def88b1def32bf87e.1560272160.git.bcodding@redhat.com/
I don't think it will go in 5.2.. it's not a huge problem.
Ben
Powered by blists - more mailing lists