[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0d6e8178-953a-82c9-329c-241bd311dbf9@huawei.com>
Date: Fri, 25 Mar 2022 14:16:02 +0800
From: Yunsheng Lin <linyunsheng@...wei.com>
To: Vincent Ray <vray@...rayinc.com>, <vladimir.oltean@....com>,
<kuba@...nel.org>, "davem@...emloft.net" <davem@...emloft.net>
CC: Samuel Jones <sjones@...rayinc.com>, <netdev@...r.kernel.org>,
方国炬 <guoju.fgj@...baba-inc.com>
Subject: Re: packet stuck in qdisc
On 2022/1/28 10:36, Yunsheng Lin wrote:
> On 2022/1/25 20:55, Vincent Ray wrote:
>> Dear kernel maintainers / developers,
>>
>> I work at Kalray where we are developping an NVME-over-TCP target controller board.
>> My setup is as such :
>> - a development workstation running Linux 5.x.y (the host)
>> - sending NVME-TCP traffic to our board, to which it is connected through a Mellanox NIC (Connect-X-5) and a 100G ETH cable
>>
>> While doing performance tests, using simple fio scenarios running over the regular kernel nvme-tcp driver on the host, we noticed important performance variations.
>> After some digging (using tcpdump on the host), we found that there were big "holes" in the tcp traffic sent by the host.
>> The scenario we observed is the following :
>> 1) a TCP segment gets lost (not sent by the host) on a particular TCP connection, leading to a gap in the seq numbers received by the board
>> 2) the board sends dup-acks and/or sacks (if configured) to signal this loss
>> 3) then, sometimes, the host stops emitting on that TCP connection for several seconds (as much as 14s observed)
>> 4) finally the host resumes emission, sending the missing packet
>> 5) then the TCP connection continues correctly with the appropriate throughput
>>
>> Such a scenario can be observed in the attached tcpdump (+ comments).
>
> Hi,
> Thanks for reporting the problem.
Hi,
It seems guoju from alibaba has a similar problem as above.
And they fixed it by adding a smp_mb() barrier between spin_unlock()
and test_bit() in qdisc_run_end(), please see if it fixes your problem.
>
>>
View attachment "0001-net-sched-add-barrier-to-fix-packet-stuck-problem-fo_ali.patch" of type "text/plain" (1905 bytes)
Powered by blists - more mailing lists