Re: memory leak in nfs_get_client

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

 



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?

- Eric



[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