[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <256c2549-b831-2e7e-b18b-69243bb33ce3@brocade.com>
Date: Thu, 20 Apr 2017 14:01:16 +0100
From: Robert Shearman <rshearma@...cade.com>
To: David Ahern <dsa@...ulusnetworks.com>, <davem@...emloft.net>
CC: <netdev@...r.kernel.org>
Subject: Re: [PATCH net-next 0/3] l3mdev: Improve use with main table
On 13/04/17 15:36, David Ahern wrote:
> On 4/13/17 6:48 AM, Robert Shearman wrote:
>>> the patches look ok to me, but in testing them I see I refcnt problem.
>>> simple reproducer:
>>>
>>> ip li add red type vrf table 254
>>> ip link set dev eth1 vrf red
>>> ip addr add 127.0.0.1/8 dev red
>>> ip link set dev eth1 up
>>> ip li set red up
>>> ping -c1 -w1 -I red 127.0.0.1
>>> ip li del red
>>> --> hangs with 'uregister_netdevice: waiting for red to become free.'
>>
>> Right, I've reproduced the same and it occurs even without using the
>> main table and I believe it has been introduced within the last week.
>
> The cached dst on sockets is one known place that causes a hang on a
> delete. Basically the delete stalls until the sockets are closed. I have
> a patch for sk_rx_dst which is the one I chased down last week.
> sk_dst_cache is another possibility.
>
> Neither of those should be at play with the above example because the
> ping command runs and then exits.
Thanks for the pointers. My earlier assessment that this was something
recent turned out to be wrong. I've sent a patch against net that fixes
the issue.
Thanks,
Rob
Powered by blists - more mailing lists