[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f423213d-4092-f77a-3bc5-4f4198bb222c@synopsys.com>
Date: Thu, 10 May 2018 15:29:08 +0100
From: Jose Abreu <Jose.Abreu@...opsys.com>
To: Bhadram Varka <vbhadram@...dia.com>,
Jose Abreu <Jose.Abreu@...opsys.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Joao Pinto <Joao.Pinto@...opsys.com>
Subject: Re: STMMAC driver with TSO enabled issue
Hi Bhadram,
On 10-05-2018 09:55, Jose Abreu wrote:
> ++net-dev
>
> Hi Bhadram,
>
> On 09-05-2018 12:03, Bhadram Varka wrote:
>> Hi,
>>
>> Thanks for responding.
>>
>> Tried below suggested way. Still observing the issue -
> It seems stmmac has a bug in the RX side when using TSO which is
> causing all the RX descriptors to be consumed. The stmmac_rx()
> function will need to be refactored. I will send a fix ASAP.
Are you using this patch [1] ? Because there is a problem with
the patch. By adding the previously removed call to
stmmac_init_rx_desc() TSO works okay in my setup.
[1] https://patchwork.ozlabs.org/patch/910224/
>
> Thanks and Best Regards,
> Jose Miguel Abreu
>
>> [root@...rm ~]# iperf3 -c 10.19.65.141
>> Connecting to host 10.19.65.141, port 5201
>> [ 5] local 10.19.65.210 port 57630 connected to 10.19.65.141
>> port 5201
>> [ 65.408268] stmmac_tso_xmit(): line = 2842
>> [ 65.412362] stmmac_tso_xmit: tcphdrlen 32, hdr_len 66,
>> pay_len 0, mss 1448
>> [ 65.419224] skb->len 8754, skb->data_len 8688
>> [ 65.423672] stmmac_tso_xmit: curr=20 dirty=17 f=18, e=20,
>> f_p=00000000178e52e1, nfrags 1
>> [ 65.431747] TX descriptor ring:
>> [ 65.434881] 000 [0x82005000]: 0x0 0x0 0x0 0x0
>> [ 65.439230] 001 [0x82005010]: 0x0 0x0 0x0 0x0
>> [ 65.443578] 002 [0x82005020]: 0x0 0x0 0x0 0x0
>> [ 65.447927] 003 [0x82005030]: 0x0 0x0 0x0 0x0
>> [ 65.452275] 004 [0x82005040]: 0x0 0x0 0x0 0x0
>> [ 65.456622] 005 [0x82005050]: 0x0 0x0 0x0 0x0
>> [ 65.460970] 006 [0x82005060]: 0x0 0x0 0x0 0x0
>> [ 65.465316] 007 [0x82005070]: 0x0 0x0 0x0 0x0
>> [ 65.469664] 008 [0x82005080]: 0x0 0x0 0x0 0x0
>> [ 65.474010] 009 [0x82005090]: 0x0 0x0 0x0 0x0
>> [ 65.478357] 010 [0x820050a0]: 0x0 0x0 0x0 0x0
>> [ 65.482706] 011 [0x820050b0]: 0x0 0x0 0x0 0x0
>> [ 65.487053] 012 [0x820050c0]: 0x0 0x0 0x0 0x0
>> [ 65.491400] 013 [0x820050d0]: 0x0 0x0 0x0 0x0
>> [ 65.495746] 014 [0x820050e0]: 0x0 0x0 0x0 0x0
>> [ 65.500092] 015 [0x820050f0]: 0x0 0x0 0x0 0x0
>> [ 65.504438] 016 [0x82005100]: 0x0 0x0 0x0 0x0
>> [ 65.508784] 017 [0x82005110]: 0x0 0x0 0x5a8 0xc4000000
>> [ 65.513910] 018 [0x82005120]: 0xfb297000 0x0 0x42 0xa04421f0
>> [ 65.519557] 019 [0x82005130]: 0xfb298000 0x0 0x21f0 0x90000000
>> [ 65.525376] 020 [0x82005140]: 0x0 0x0 0x0 0x0
>> [ 65.529722] 021 [0x82005150]: 0x0 0x0 0x0 0x0
>> [ 65.534069] 022 [0x82005160]: 0x0 0x0 0x0 0x0
>> [ 65.538414] 023 [0x82005170]: 0x0 0x0 0x0 0x0
>> [ 65.542761] 024 [0x82005180]: 0x0 0x0 0x0 0x0
>> [ 65.547107] 025 [0x82005190]: 0x0 0x0 0x0 0x0
>> [ 65.551454] 026 [0x820051a0]: 0x0 0x0 0x0 0x0
>> [ 65.555802] 027 [0x820051b0]: 0x0 0x0 0x0 0x0
>> [ 65.560147] 028 [0x820051c0]: 0x0 0x0 0x0 0x0
>> [ 65.564493] 029 [0x820051d0]: 0x0 0x0 0x0 0x0
>> [ 65.568840] 030 [0x820051e0]: 0x0 0x0 0x0 0x0
>> [ 65.573187] 031 [0x820051f0]: 0x0 0x0 0x0 0x0
>> [ 65.577533] 032 [0x82005200]: 0x0 0x0 0x0 0x0
>> [ 65.581879] 033 [0x82005210]: 0x0 0x0 0x0 0x0
>> [ 65.586225] 034 [0x82005220]: 0x0 0x0 0x0 0x0
>> [ 65.590571] 035 [0x82005230]: 0x0 0x0 0x0 0x0
>> [ 65.594917] 036 [0x82005240]: 0x0 0x0 0x0 0x0
>> [ 65.599262] 037 [0x82005250]: 0x0 0x0 0x0 0x0
>> [ 65.603607] 038 [0x82005260]: 0x0 0x0 0x0 0x0
>> [ 65.607952] 039 [0x82005270]: 0x0 0x0 0x0 0x0
>> [ 65.612297] 040 [0x82005280]: 0x0 0x0 0x0 0x0
>> [ 65.616643] 041 [0x82005290]: 0x0 0x0 0x0 0x0
>> [ 65.620989] 042 [0x820052a0]: 0x0 0x0 0x0 0x0
>> [ 65.625336] 043 [0x820052b0]: 0x0 0x0 0x0 0x0
>> [ 65.629681] 044 [0x820052c0]: 0x0 0x0 0x0 0x0
>> [ 65.634027] 045 [0x820052d0]: 0x0 0x0 0x0 0x0
>> [ 65.638372] 046 [0x820052e0]: 0x0 0x0 0x0 0x0
>> [ 65.642718] 047 [0x820052f0]: 0x0 0x0 0x0 0x0
>> [ 65.647063] 048 [0x82005300]: 0x0 0x0 0x0 0x0
>> [ 65.651408] 049 [0x82005310]: 0x0 0x0 0x0 0x0
>> [ 65.655754] 050 [0x82005320]: 0x0 0x0 0x0 0x0
>> [ 65.660099] 051 [0x82005330]: 0x0 0x0 0x0 0x0
>> [ 65.664444] 052 [0x82005340]: 0x0 0x0 0x0 0x0
>> [ 65.668790] 053 [0x82005350]: 0x0 0x0 0x0 0x0
>> [ 65.673134] 054 [0x82005360]: 0x0 0x0 0x0 0x0
>> [ 65.677480] 055 [0x82005370]: 0x0 0x0 0x0 0x0
>> [ 65.681825] 056 [0x82005380]: 0x0 0x0 0x0 0x0
>> [ 65.686170] 057 [0x82005390]: 0x0 0x0 0x0 0x0
>> [ 65.690515] 058 [0x820053a0]: 0x0 0x0 0x0 0x0
>> [ 65.694861] 059 [0x820053b0]: 0x0 0x0 0x0 0x0
>> [ 65.699206] 060 [0x820053c0]: 0x0 0x0 0x0 0x0
>> [ 65.703552] 061 [0x820053d0]: 0x0 0x0 0x0 0x0
>> [ 65.707898] 062 [0x820053e0]: 0x0 0x0 0x0 0x0
>> [ 65.712243] 063 [0x820053f0]: 0x0 0x0 0x0 0x0
>> [ 65.716706] stmmac_tso_xmit(): line = 2842
>> [ 65.720802] stmmac_tso_xmit: tcphdrlen 32, hdr_len 66,
>> pay_len 0, mss 1448
>> [ 65.727669] skb->len 4410, skb->data_len 4344
>> [ 65.732114] stmmac_tso_xmit: curr=22 dirty=19 f=20, e=22,
>> f_p=00000000b1247b41, nfrags 1
>> [ 65.740190] TX descriptor ring:
>> [ 65.743327] 000 [0x82005000]: 0x0 0x0 0x0 0x0
>> [ 65.747678] 001 [0x82005010]: 0x0 0x0 0x0 0x0
>> [ 65.752029] 002 [0x82005020]: 0x0 0x0 0x0 0x0
>> [ 65.756378] 003 [0x82005030]: 0x0 0x0 0x0 0x0
>> [ 65.760727] 004 [0x82005040]: 0x0 0x0 0x0 0x0
>> [ 65.765077] 005 [0x82005050]: 0x0 0x0 0x0 0x0
>> [ 65.769427] 006 [0x82005060]: 0x0 0x0 0x0 0x0
>> [ 65.773776] 007 [0x82005070]: 0x0 0x0 0x0 0x0
>> [ 65.778126] 008 [0x82005080]: 0x0 0x0 0x0 0x0
>> [ 65.782476] 009 [0x82005090]: 0x0 0x0 0x0 0x0
>> [ 65.786826] 010 [0x820050a0]: 0x0 0x0 0x0 0x0
>> [ 65.791176] 011 [0x820050b0]: 0x0 0x0 0x0 0x0
>> [ 65.795526] 012 [0x820050c0]: 0x0 0x0 0x0 0x0
>> [ 65.799875] 013 [0x820050d0]: 0x0 0x0 0x0 0x0
>> [ 65.804225] 014 [0x820050e0]: 0x0 0x0 0x0 0x0
>> [ 65.808575] 015 [0x820050f0]: 0x0 0x0 0x0 0x0
>> [ 65.812925] 016 [0x82005100]: 0x0 0x0 0x0 0x0
>> [ 65.817274] 017 [0x82005110]: 0x0 0x0 0x0 0x0
>> [ 65.821625] 018 [0x82005120]: 0x0 0x0 0x0 0x0
>> [ 65.825976] 019 [0x82005130]: 0xfb298000 0x0 0x21f0 0x90000000
>> [ 65.831800] 020 [0x82005140]: 0xfb2a1000 0x0 0x42 0xa04410f8
>> [ 65.837450] 021 [0x82005150]: 0xfb2a2000 0x0 0x10f8 0x90000000
>> [ 65.843273] 022 [0x82005160]: 0x0 0x0 0x0 0x0
>> [ 65.847622] 023 [0x82005170]: 0x0 0x0 0x0 0x0
>> [ 65.851971] 024 [0x82005180]: 0x0 0x0 0x0 0x0
>> [ 65.856319] 025 [0x82005190]: 0x0 0x0 0x0 0x0
>> [ 65.860670] 026 [0x820051a0]: 0x0 0x0 0x0 0x0
>> [ 65.865020] 027 [0x820051b0]: 0x0 0x0 0x0 0x0
>> [ 65.869369] 028 [0x820051c0]: 0x0 0x0 0x0 0x0
>> [ 65.873719] 029 [0x820051d0]: 0x0 0x0 0x0 0x0
>> [ 65.878068] 030 [0x820051e0]: 0x0 0x0 0x0 0x0
>> [ 65.882418] 031 [0x820051f0]: 0x0 0x0 0x0 0x0
>> [ 65.886767] 032 [0x82005200]: 0x0 0x0 0x0 0x0
>> [ 65.891118] 033 [0x82005210]: 0x0 0x0 0x0 0x0
>> [ 65.895467] 034 [0x82005220]: 0x0 0x0 0x0 0x0
>> [ 65.899816] 035 [0x82005230]: 0x0 0x0 0x0 0x0
>> [ 65.904165] 036 [0x82005240]: 0x0 0x0 0x0 0x0
>> [ 65.908515] 037 [0x82005250]: 0x0 0x0 0x0 0x0
>> [ 65.912865] 038 [0x82005260]: 0x0 0x0 0x0 0x0
>> [ 65.917215] 039 [0x82005270]: 0x0 0x0 0x0 0x0
>> [ 65.921564] 040 [0x82005280]: 0x0 0x0 0x0 0x0
>> [ 65.925915] 041 [0x82005290]: 0x0 0x0 0x0 0x0
>> [ 65.930264] 042 [0x820052a0]: 0x0 0x0 0x0 0x0
>> [ 65.934615] 043 [0x820052b0]: 0x0 0x0 0x0 0x0
>> [ 65.938964] 044 [0x820052c0]: 0x0 0x0 0x0 0x0
>> [ 65.943313] 045 [0x820052d0]: 0x0 0x0 0x0 0x0
>> [ 65.947664] 046 [0x820052e0]: 0x0 0x0 0x0 0x0
>> [ 65.952012] 047 [0x820052f0]: 0x0 0x0 0x0 0x0
>> [ 65.956363] 048 [0x82005300]: 0x0 0x0 0x0 0x0
>> [ 65.960712] 049 [0x82005310]: 0x0 0x0 0x0 0x0
>> [ 65.965061] 050 [0x82005320]: 0x0 0x0 0x0 0x0
>> [ 65.969410] 051 [0x82005330]: 0x0 0x0 0x0 0x0
>> [ 65.973760] 052 [0x82005340]: 0x0 0x0 0x0 0x0
>> [ 65.978110] 053 [0x82005350]: 0x0 0x0 0x0 0x0
>> [ 65.982460] 054 [0x82005360]: 0x0 0x0 0x0 0x0
>> [ 65.986812] 055 [0x82005370]: 0x0 0x0 0x0 0x0
>> [ 65.991161] 056 [0x82005380]: 0x0 0x0 0x0 0x0
>> [ 65.995510] 057 [0x82005390]: 0x0 0x0 0x0 0x0
>> [ 65.999860] 058 [0x820053a0]: 0x0 0x0 0x0 0x0
>> [ 66.004210] 059 [0x820053b0]: 0x0 0x0 0x0 0x0
>> [ 66.008559] 060 [0x820053c0]: 0x0 0x0 0x0 0x0
>> [ 66.012908] 061 [0x820053d0]: 0x0 0x0 0x0 0x0
>> [ 66.017257] 062 [0x820053e0]: 0x0 0x0 0x0 0x0
>> [ 66.021607] 063 [0x820053f0]: 0x0 0x0 0x0 0x0
>> [ ID] Interval Transfer Bitrate Retr Cwnd
>> [ 5] 0.00-1.00 sec 184 KBytes 1.50 Mbits/sec 0
>> 1.41 KBytes
>> [ 5] 1.00-2.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>> [ 5] 2.00-3.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>> [ 5] 3.00-4.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>> [ 5] 4.00-5.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>> [ 5] 5.00-6.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>> [ 5] 6.00-7.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>> [ 5] 7.00-8.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>> [ 5] 8.00-9.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41
>> KBytes
>>
>>
>> On 5/9/2018 3:35 PM, Jose Abreu wrote:
>>> Hi Bhadram,
>>>
>>> On 09-05-2018 08:18, Bhadram Varka wrote:
>>>> + queue0 {
>>>> + snps,weight = <0x10>;
>>>> + queue1 {
>>>> + snps,weight = <0x10>;
>>>>
>>>> + queue2 {
>>>> + snps,weight = <0x10>;
>>>>
>>>> + queue3 {
>>>> + snps,weight = <0x10>;
>>>>
>>> This is wrong. You can't use the same weight for all queues.
>>> Please try with different weights (for example: 0x10, 0x11, 0x12,
>>> 0x13).
>>>
>>> Thanks and Best Regards,
>>> Jose Miguel Abreu
>>>
>>>
Powered by blists - more mailing lists