All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays
@ 2017-08-01 20:25 Weston Andros Adamson
  2017-08-03  2:07 ` Weston Andros Adamson
  0 siblings, 1 reply; 4+ messages in thread
From: Weston Andros Adamson @ 2017-08-01 20:25 UTC (permalink / raw)
  To: trond.myklebust, anna.schumaker; +Cc: linux-nfs, Weston Andros Adamson

The client was freeing the nfs4_ff_layout_ds, but not the contained
nfs4_ff_ds_version array.

Signed-off-by: Weston Andros Adamson <dros@primarydata.com>
---
 fs/nfs/flexfilelayout/flexfilelayoutdev.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/nfs/flexfilelayout/flexfilelayoutdev.c b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
index 6df7a0cf5660..f32c58bbe556 100644
--- a/fs/nfs/flexfilelayout/flexfilelayoutdev.c
+++ b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
@@ -32,6 +32,7 @@ void nfs4_ff_layout_free_deviceid(struct nfs4_ff_layout_ds *mirror_ds)
 {
 	nfs4_print_deviceid(&mirror_ds->id_node.deviceid);
 	nfs4_pnfs_ds_put(mirror_ds->ds);
+	kfree(mirror_ds->ds_versions);
 	kfree_rcu(mirror_ds, id_node.rcu);
 }
 
-- 
2.11.0 (Apple Git-81)


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays
  2017-08-01 20:25 [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays Weston Andros Adamson
@ 2017-08-03  2:07 ` Weston Andros Adamson
  2017-08-03 12:57   ` Mkrtchyan, Tigran
  0 siblings, 1 reply; 4+ messages in thread
From: Weston Andros Adamson @ 2017-08-03  2:07 UTC (permalink / raw)
  To: Trond Myklebust, Anna Schumaker; +Cc: linux-nfs list

This should probably be CCed to some stable releases too. I'll figure it =
out soon.

-dros

> On Aug 1, 2017, at 4:25 PM, Weston Andros Adamson <dros@monkey.org> =
wrote:
>=20
> The client was freeing the nfs4_ff_layout_ds, but not the contained
> nfs4_ff_ds_version array.
>=20
> Signed-off-by: Weston Andros Adamson <dros@primarydata.com>
> ---
> fs/nfs/flexfilelayout/flexfilelayoutdev.c | 1 +
> 1 file changed, 1 insertion(+)
>=20
> diff --git a/fs/nfs/flexfilelayout/flexfilelayoutdev.c =
b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
> index 6df7a0cf5660..f32c58bbe556 100644
> --- a/fs/nfs/flexfilelayout/flexfilelayoutdev.c
> +++ b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
> @@ -32,6 +32,7 @@ void nfs4_ff_layout_free_deviceid(struct =
nfs4_ff_layout_ds *mirror_ds)
> {
> 	nfs4_print_deviceid(&mirror_ds->id_node.deviceid);
> 	nfs4_pnfs_ds_put(mirror_ds->ds);
> +	kfree(mirror_ds->ds_versions);
> 	kfree_rcu(mirror_ds, id_node.rcu);
> }
>=20
> --=20
> 2.11.0 (Apple Git-81)
>=20


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays
  2017-08-03  2:07 ` Weston Andros Adamson
@ 2017-08-03 12:57   ` Mkrtchyan, Tigran
  2017-08-11 14:18     ` Weston Andros Adamson
  0 siblings, 1 reply; 4+ messages in thread
From: Mkrtchyan, Tigran @ 2017-08-03 12:57 UTC (permalink / raw)
  To: Weston Andros Adamson; +Cc: Trond Myklebust, Anna Schumaker, linux-nfs

Hi Dros,

can this leak be the source of issue described here:  http://www.spinics.net/lists/linux-nfs/msg64890.html

Tigran.

----- Original Message -----
> From: "Weston Andros Adamson" <dros@monkey.org>
> To: "Trond Myklebust" <trond.myklebust@primarydata.com>, "Anna Schumaker" <anna.schumaker@netapp.com>
> Cc: "linux-nfs" <linux-nfs@vger.kernel.org>
> Sent: Thursday, August 3, 2017 4:07:28 AM
> Subject: Re: [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays

> This should probably be CCed to some stable releases too. I'll figure it out
> soon.
> 
> -dros
> 
>> On Aug 1, 2017, at 4:25 PM, Weston Andros Adamson <dros@monkey.org> wrote:
>> 
>> The client was freeing the nfs4_ff_layout_ds, but not the contained
>> nfs4_ff_ds_version array.
>> 
>> Signed-off-by: Weston Andros Adamson <dros@primarydata.com>
>> ---
>> fs/nfs/flexfilelayout/flexfilelayoutdev.c | 1 +
>> 1 file changed, 1 insertion(+)
>> 
>> diff --git a/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>> b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>> index 6df7a0cf5660..f32c58bbe556 100644
>> --- a/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>> +++ b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>> @@ -32,6 +32,7 @@ void nfs4_ff_layout_free_deviceid(struct nfs4_ff_layout_ds
>> *mirror_ds)
>> {
>> 	nfs4_print_deviceid(&mirror_ds->id_node.deviceid);
>> 	nfs4_pnfs_ds_put(mirror_ds->ds);
>> +	kfree(mirror_ds->ds_versions);
>> 	kfree_rcu(mirror_ds, id_node.rcu);
>> }
>> 
>> --
>> 2.11.0 (Apple Git-81)
>> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays
  2017-08-03 12:57   ` Mkrtchyan, Tigran
@ 2017-08-11 14:18     ` Weston Andros Adamson
  0 siblings, 0 replies; 4+ messages in thread
From: Weston Andros Adamson @ 2017-08-11 14:18 UTC (permalink / raw)
  To: Tigran Mkrtchyan; +Cc: Trond Myklebust, Anna Schumaker, linux-nfs list

Hey Tigran,

I don't think so, this fixes a simple memory leak where memory is not =
freed and nothing holds a reference to it. It should not lead to any =
invalid pointers, but will eventually lead to the OOM killer killing a =
bunch of processes.

There have been other recent changes that may have addressed this. Can =
you reproduce with the latest changes?

-dros

> On Aug 3, 2017, at 8:57 AM, Mkrtchyan, Tigran =
<tigran.mkrtchyan@desy.de> wrote:
>=20
> Hi Dros,
>=20
> can this leak be the source of issue described here:  =
http://www.spinics.net/lists/linux-nfs/msg64890.html
>=20
> Tigran.
>=20
> ----- Original Message -----
>> From: "Weston Andros Adamson" <dros@monkey.org>
>> To: "Trond Myklebust" <trond.myklebust@primarydata.com>, "Anna =
Schumaker" <anna.schumaker@netapp.com>
>> Cc: "linux-nfs" <linux-nfs@vger.kernel.org>
>> Sent: Thursday, August 3, 2017 4:07:28 AM
>> Subject: Re: [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version =
arrays
>=20
>> This should probably be CCed to some stable releases too. I'll figure =
it out
>> soon.
>>=20
>> -dros
>>=20
>>> On Aug 1, 2017, at 4:25 PM, Weston Andros Adamson <dros@monkey.org> =
wrote:
>>>=20
>>> The client was freeing the nfs4_ff_layout_ds, but not the contained
>>> nfs4_ff_ds_version array.
>>>=20
>>> Signed-off-by: Weston Andros Adamson <dros@primarydata.com>
>>> ---
>>> fs/nfs/flexfilelayout/flexfilelayoutdev.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>=20
>>> diff --git a/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>>> b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>>> index 6df7a0cf5660..f32c58bbe556 100644
>>> --- a/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>>> +++ b/fs/nfs/flexfilelayout/flexfilelayoutdev.c
>>> @@ -32,6 +32,7 @@ void nfs4_ff_layout_free_deviceid(struct =
nfs4_ff_layout_ds
>>> *mirror_ds)
>>> {
>>> 	nfs4_print_deviceid(&mirror_ds->id_node.deviceid);
>>> 	nfs4_pnfs_ds_put(mirror_ds->ds);
>>> +	kfree(mirror_ds->ds_versions);
>>> 	kfree_rcu(mirror_ds, id_node.rcu);
>>> }
>>>=20
>>> --
>>> 2.11.0 (Apple Git-81)
>>>=20
>>=20
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-nfs" =
in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-08-11 14:18 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-01 20:25 [PATCH] nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays Weston Andros Adamson
2017-08-03  2:07 ` Weston Andros Adamson
2017-08-03 12:57   ` Mkrtchyan, Tigran
2017-08-11 14:18     ` Weston Andros Adamson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.