On 06/08/2018 02:38 PM, Eric Dumazet wrote:
>
>
> On 06/08/2018 02:04 PM, Michal Kubecek wrote:
>>
>> However, the lockless listener was introduced in 4.4 so it's not clear
>> why reporter started encountering this after an upgrade from 4.13 to
>> 4.15.
>
> Yes, I do not buy this at all.
>
> If two identical SYN are received by two cpus, we should create one SYN_RECV
> and send
> two SYNACK.
>
> But it is a bit hard to test this :/
>
> I will take a look, thanks.
Oh well, this is not done as I thought, this needs a fix, I will work on this.
reqsk_queue_hash_req() calls inet_ehash_insert() without making sure that the
same 4-tuple
is not already there.
Do not worry, we will keep the listener lockless :)