Re: memory leak in nfs_get_client

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2 Jul 2019, at 12:11, Eric Biggers wrote:

On Tue, Jul 02, 2019 at 07:23:32AM -0400, Benjamin Coddington wrote:
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@xxxxxxxxxx/

I don't think it will go in 5.2.. it's not a huge problem.

Ben

Okay, great. I didn't see it in linux-next and there was no further reply to this thread, which usually (having seen it happen on lots of syzbot bugs) means
the person forgot about it.

Tip: you can use the '--in-reply-to=<MESSAGE_ID>' option to 'git send-email' or 'git format-patch' to send the patch in response to the original thread, which
makes it very easy to see that a patch was actually sent out.

Yep, that's nice for those following along, but sometimes I think that makes it harder for the maintainers to scrape the patches off the list. I've had
patches get dropped that were buried at the end of a long discussion, so
I've made a habit of always making patches the top.

Ben



[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux