All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Leonidas P. Papadakos" <papadakospan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Peter Geis <pgwipeout-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Heiko Stuebner <heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org>,
	Thomas McKahan
	<tonymckahan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: Re: [PATCH v2] arm64: dts: rockchip: fix rk3328-roc-cc gmac2io tx/rx_delay
Date: Sun, 10 Mar 2019 01:25:35 +0200	[thread overview]
Message-ID: <1552173935.1238.1@gmail.com> (raw)
In-Reply-To: <1bab9d4c-5e9d-968d-026d-98e65af6e7ee-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>



Στις Κυρ, 10 Μαρ, 2019 at 1:16 ΠΜ, ο/η Peter Geis 
<pgwipeout@gmail.com> έγραψε:
> 
> 
> On 3/9/2019 6:05 PM, Leonidas P. Papadakos wrote:
>> 
>> 
>> Στις Σαβ, 9 Μαρ, 2019 at 4:21 ΜΜ, ο/η Peter Geis 
>> <pgwipeout@gmail.com> \x7fέγραψε:
>>> 
>>> 
>>> On 3/9/2019 9:16 AM, Heiko Stuebner wrote:
>>>> Am Samstag, 9. März 2019, 13:45:21 CET schrieb Peter Geis:
>>>>> On 3/8/2019 10:26 PM, Leonidas P. Papadakos wrote:
>>>>>> 
>>>>>>> So I discovered the cause of my TX issues, at least on my 
>>>>>>> \x7f\x7f\x7f\x7f\x7f\x7frk3328-roc-cc.
>>>>>>> The rk3328.dtsi is missing several rgmii tx pull strength 
>>>>>>> values.
>>>>>>> This is causing them to default to 0ma.
>>>>>>> 
>>>>>>> I've pushed them to 12ma, same as the other tx values, and I'm 
>>>>>>> \x7f\x7f\x7f\x7f\x7f\x7fgetting
>>>>>>> 600 mbps tx, with no TX failures.
>>>>>>> 
>>>>>>> I am also going to test his adaptive patch once it's done 
>>>>>>> building.
>>>>>>> 
>>>>>>> Thoughts?
>>>>>>> 
>>>>>>> 
>>>>>>> diff --git a/arch/arm65/boot/dts/rockchip/rk3328-roc-cc.dts
>>>>>>> b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
>>>>>>> index c0519bc5884e..696627bf3331 100644
>>>>>>> --- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
>>>>>>> +++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
>>>>>>> @@ -280,6 +280,26 @@
>>>>>>>               rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO 
>>>>>>> \x7f\x7f\x7f\x7f\x7f\x7f&pcfg_pull_none>;
>>>>>>>           };
>>>>>>>       };
>>>>>>> +
>>>>>>> +    gmac-1 {
>>>>>>> +        rgmiim1_pins: rgmiim1-pins {
>>>>>>> +            rockchip,pins =
>>>>>>> +                /* mac_txclk */
>>>>>>> +                <0 RK_PB0 1 &pcfg_pull_none_12ma>,
>>>>>>> +                /* mac_txen */
>>>>>>> +                <0 RK_PB4 1 &pcfg_pull_none_12ma>,
>>>>>>> +                /* mac_clk */
>>>>>>> +                <0 RK_PD0 1 &pcfg_pull_none_12ma>,
>>>>>>> +                /* mac_txd1 */
>>>>>>> +                <0 RK_PC0 1 &pcfg_pull_none_12ma>,
>>>>>>> +                /* mac_txd0 */
>>>>>>> +                <0 RK_PC1 1 &pcfg_pull_none_12ma>,
>>>>>>> +                /* mac_txd3 */
>>>>>>> +                <0 RK_PC7 1 &pcfg_pull_none_12ma>,
>>>>>>> +                /* mac_txd2 */
>>>>>>> +                <0 RK_PC6 1 &pcfg_pull_none_12ma>;
>>>>>>> +        };
>>>>>>> +    };
>>>>>>>   };
>>>>>>> 
>>>>>>>   &sdmmc {
>>>>>> Good find! It seems like they're there in the dtsi, but 
>>>>>> configured as
>>>>>> none when it comes to ma. I'll test it
>>>>>> 
>>>>>> 
>>>>> 
>>>>> With Ayufan's patch offload patch and my pull patch, I now have 
>>>>> the
>>>>> following results:
>>>>> [ ID] Interval           Transfer     Bitrate         Retr
>>>>> [  5]   0.00-10.01  sec  1022 MBytes   857 Mbits/sec  885   sender
>>>>> [  5]   0.00-10.01  sec  1022 MBytes   856 Mbits/sec
>>>>> receiver
>>>>> 
>>>>> eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
>>>>>           inet6 fe80::e8b5:5eff:fe49:d353  prefixlen 64  scopeid 
>>>>> \x7f\x7f\x7f\x7f0x20<link>
>>>>>           ether ea:b5:5e:49:d3:53  txqueuelen 1000  (Ethernet)
>>>>>           RX packets 39822  bytes 2668618 (2.6 MB)
>>>>>           RX errors 0  dropped 0  overruns 0  frame 0
>>>>>           TX packets 1005649  bytes 1516698158 (1.5 GB)
>>>>>           TX errors 0  dropped 0 overruns 0  carrier 0  
>>>>> collisions 0
>>>>>           device interrupt 29
>>>>> 
>>>>> Much better overall, still not perfect, but I think it might be 
>>>>> worth
>>>>> re-running the delay tests now.
>>>> 
>>>> also you could check if the thres-dma-flag is still necessary or 
>>>> can
>>>> be removed - might be interesting to know if fixing the drive 
>>>> strength
>>>> magically also fixes that issue.
>>>> 
>>>> 
>>>> Heiko
>>>> 
>>> 
>>> Part of my test was removing that flag.
>>> I actually haven't run with it for a while, since I chose to 
>>> disable \x7f\x7foffload in userspace instead.
>>> With threshold DMA I was having serious performance issues, but it 
>>> was \x7f\x7fbetter than networking being completely broken.
>>> 
>>> I'll write up a patch for the .dtsi and submit it today.
>>> If we can contact ayufan about his patch, that would be great!
>> 
>> For the test I use iperf3 -s on my laptop (Gigabit Ethernet)
>> and on the renegade: iperf3 -c <laptop_ip> -t 30.
>> 
>> I tried using:
>> 1) the force-thresh-dma-mode patch by itself with the changed 
>> \x7ftx/rx_delay. (Maybe the default one is better? It needs testing 
>> nayway)
>>    No ssh lag but I do get the Link reset on tx activity
>> 
>> 2) just this patch by itself
>>    the ssh lag hit me, but it does seem better. The link reset still 
>> \x7fhappens
>> 
>> 3) the force-thresh-dma-mode patch with this one:
>>    No shs lag, and as before, the tx activity seems to hit less? 
>> (Maybe \x7fplacebo) but the link reset does happen regularly.
>> 
>> As far as I understand ayufan's offload patch removes the need for 
>> the \x7fforce-thresh-dma-mode flag.
>> I'll try ayufan's patch (adding the option to the rk3328-roc-cc as 
>> well) \x7ftogether with this patch.
>> Maybe it'll be better
>> 
> 
> We have several issues on the rk3328.
> 
> The first issue, which you describe as the ssh lag, is the tx-offload 
> issue.
> Packets that are larger than the MTU and will be fragmented break if 
> tx-offload is enabled.
> To fix this, you must somehow disable tx-offload.
> force-thresh-dma-mode disabled tx-offload, but had other side effects.
> Ayufan's patch disables tx-offload only if the packet is larger than 
> 1498.
> You can also disable tx-offload from userspace with ethtool.
> 
> The second issue is the high rate of tx packets being corrupted, 
> which my patch to set the tx pull values fixes.
> 
> The third issue is the tx and rx delays need to be tuned now that the 
> tx packet corruption issue has been fixed.
> 
> I hope this clears things up a little for you.

Yup, that's what I have in my mind already. My previous comment wasn't 
clear, I know.
I pieced it together after your dma-mode patch, because that one fixed 
the ssh lag.
My previous email was just what I saw after those changes.

In my case the link reset still happens with your patch.

You're thinking that the combination of your patch, ayufan's 
"conditional" patch and a specific tweak in the delays would work for 
the network instability problem?



_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

  parent reply	other threads:[~2019-03-09 23:25 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-06 22:34 [PATCH v2] arm64: dts: rockchip: fix rk3328-roc-cc gmac2io tx/rx_delay Leonidas P. Papadakos
     [not found] ` <20190306223454.2959-1-papadakospan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-06 22:37   ` Leonidas P. Papadakos
2019-03-08  1:05   ` Peter Geis
     [not found]     ` <24c5ffaa-644d-4623-a635-6842f67efe8a-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-08  1:27       ` Leonidas P. Papadakos
     [not found]         ` <1552008447.3271.0-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-08 23:26           ` Leonidas P. Papadakos
     [not found]             ` <1552087603.1401.0-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09  2:39               ` Peter Geis
     [not found]                 ` <ec810aad-dd04-84e4-bfb0-98b005cf3f03-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09  3:26                   ` Leonidas P. Papadakos
     [not found]                     ` <1552101990.1401.3-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09 12:45                       ` Peter Geis
     [not found]                         ` <e9c539ce-f1cb-06f8-1083-ea64c9fd9e7b-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09 14:16                           ` Heiko Stuebner
2019-03-09 14:21                             ` Peter Geis
     [not found]                               ` <4f17a798-ed28-8403-ed75-30fdf4bfc44b-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09 23:05                                 ` Leonidas P. Papadakos
     [not found]                                   ` <1552172735.1238.0-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09 23:16                                     ` Peter Geis
     [not found]                                       ` <1bab9d4c-5e9d-968d-026d-98e65af6e7ee-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09 23:25                                         ` Leonidas P. Papadakos [this message]
     [not found]                                           ` <1552173935.1238.1-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-09 23:34                                             ` Peter Geis
     [not found]                                               ` <6d6a700a-39c9-25b6-dfff-296c0757603d-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2019-03-10  0:26                                                 ` Leonidas P. Papadakos
2019-03-13 20:20                                                   ` Leonidas P. Papadakos

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1552173935.1238.1@gmail.com \
    --to=papadakospan-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org \
    --cc=linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=pgwipeout-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=tonymckahan-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.