On 9/8/16 6:35 PM, Jojy Varghese wrote:
> Thanks for the feedback guys. I appreciate it.
>
> I am working with 4.4.3 kernel. I will try to reproduce the issue
> with the kernel tree at
> https://git.kernel.org/cgit/linux/kernel/git/davem/net.git.
>
> In the meantime, the only data I have now is
On Thu, 2016-09-08 at 17:35 -0700, Jojy Varghese wrote:
> Thanks for the feedback guys. I appreciate it.
>
> I am working with 4.4.3 kernel. I will try to reproduce the issue
> with the kernel tree at
> https://git.kernel.org/cgit/linux/kernel/git/davem/net.git.
>
Good.
Please do not top post
From: Jojy Varghese
Date: Thu, 8 Sep 2016 17:35:08 -0700
> - "dst-ifdown" does not look correct since it will never release
> reference to loopback device.
The routes and packets in the namespace are purged and disappear when
the namespace goes down, and that's how all of the references to the
Thanks for the feedback guys. I appreciate it.
I am working with 4.4.3 kernel. I will try to reproduce the issue
with the kernel tree at
https://git.kernel.org/cgit/linux/kernel/git/davem/net.git.
In the meantime, the only data I have now is :
- "dst-ifdown" does not look correct since it will
From: Jojy Varghese
Date: Thu, 8 Sep 2016 16:33:38 -0700
> Sorry last patch was just the delta over my original patch. Here is
> the complete patch:
It looks like you are grasping at straws.
Please slow down and take the time to debug this properly.
All of the mechanisms exist to make these re
On Thu, 2016-09-08 at 16:33 -0700, Jojy Varghese wrote:
> Sorry last patch was just the delta over my original patch. Here is
> the complete patch:
>
> ---
> net/core/dst.c | 7 +--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/net/core/dst.c b/net/core/dst.c
> index a16
On Thu, 2016-09-08 at 16:16 -0700, Jojy Varghese wrote:
> The dst's do disappear but the net device does not. A better solution
> is to only hold reference to dst's net device ONLY if it is not a
> loopback device. In the case of the loopback device, we want to do
> only a "put" on it and skip the
Sorry last patch was just the delta over my original patch. Here is
the complete patch:
---
net/core/dst.c | 7 +--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/net/core/dst.c b/net/core/dst.c
index a1656e3..f63027e 100644
--- a/net/core/dst.c
+++ b/net/core/dst.c
@@ -433,8 +
The dst's do disappear but the net device does not. A better solution
is to only hold reference to dst's net device ONLY if it is not a
loopback device. In the case of the loopback device, we want to do
only a "put" on it and skip the "hold".
Updating the patch below:
---
net/core/dst.c | 7 +++-
On Thu, 2016-09-08 at 15:12 -0700, Jojy Varghese wrote:
> Hi Eric/Lance
>
> Thanks for taking time to look at the patch. The problem in dst.c's
> "dst_ifdown" is that it will never do an actual "dev_put" on the
> loopback net device. This results in the loopback net device to be
> alive even when
Hi Eric/Lance
Thanks for taking time to look at the patch. The problem in dst.c's
"dst_ifdown" is that it will never do an actual "dev_put" on the
loopback net device. This results in the loopback net device to be
alive even when the dst goes away.
Thanks
Jojy
On Thu, Sep 8, 2016 at 2:05 PM, Er
On Thu, 2016-09-08 at 14:00 -0700, Eric Dumazet wrote:
> Latest real fix was :
> https://git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit/?id=751eb6b6042a596b0080967c1a529a9fe98dac1d
Another interesting fix is
https://git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit/?id=a5d0dc
On Thu, 2016-09-08 at 12:08 -0700, Jojy Varghese wrote:
> (Updating the patch for the case when a non-loopback dev could be
> unregistered)
>
> Currently during namespace cleanup, if ‘dst’ subsystem is holding
> a reference to the interface in the namespace, it does not get released.
> Current co
> From: "Jojy Varghese"
> To: netdev@vger.kernel.org
> Cc: da...@davemloft.net
> Sent: Thursday, September 8, 2016 3:08:29 PM
> Subject: Re: [PATCH] net_namespace: fixed net_device reference leak
>
> (Updating the patch for the case when a non-loopback dev could be
(Updating the patch for the case when a non-loopback dev could be unregistered)
Currently during namespace cleanup, if ‘dst’ subsystem is holding
a reference to the interface in the namespace, it does not get released.
Current code first does a ’dev_hold’ on the same device followed by a
‘dev_put’
During namespace cleanup, if ‘dst’ subsystem is holding
a reference to the loopback interface in the namespace, it does not get
released. This is because in the case where the net_device held by 'dst'
is same as the namespace's loopback net_device, current code first
does a ’dev_hold’ on the same d
16 matches
Mail list logo