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
next prev 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox