[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <7ef94995-9c5b-4f53-e1e3-e12e74817e9f@gmail.com>
Date: Fri, 4 May 2018 16:44:52 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Chintan Shah <chintsha@...co.com>, davem@...emloft.net,
kuznet@....inr.ac.ru, jmorris@...ei.org, yoshfuji@...ux-ipv6.org,
kaber@...sh.net, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: kamensky@...co.com, takondra@...co.com,
xe-linux-external@...co.com, enkechen@...co.com
Subject: Re: [PATCH] net: disable UDP punt on sockets in RCV_SHUTDWON
On 05/04/2018 02:08 PM, Chintan Shah wrote:
> A UDP application which opens multiple sockets with same local
> address/port combination (using SO_REUSEPORT/SO_REUSEADDR socket options);
> and issues connect to a remote socket (using one of these local socket).
> Now if the same socket, which issued connect, issues shutdown (SHUT_RD);
> packets would still be queued to this socket (if sent from same remote
> client, which the local socket connected to), and not delivered to the
> other socket in the normal state.
>
Confusing changelog.
sk_shutdown is on a different cache line, so this additional fetch would cause
loss of performance if many sockets are scanned in the hash bucket.
If you are trying to add full 4-tuple hash table to UDP, and accept() ability,
this would require a bit more than this hack...
Powered by blists - more mailing lists