[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <f462a419-aa6f-38f7-573e-c48c2a859f55@gmail.com>
Date: Fri, 11 Dec 2020 13:50:12 +0100
From: Heiner Kallweit <hkallweit1@...il.com>
To: Sven Van Asbroeck <thesven73@...il.com>
Cc: Bryan Whitehead <bryan.whitehead@...rochip.com>,
Microchip Linux Driver Support <UNGLinuxDriver@...rochip.com>,
David S Miller <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, Andrew Lunn <andrew@...n.ch>,
netdev <netdev@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH net v2] lan743x: fix rx_napi_poll/interrupt ping-pong
Am 11.12.2020 um 13:43 schrieb Sven Van Asbroeck:
> Hi Heiner,
>
> On Thu, Dec 10, 2020 at 2:32 AM Heiner Kallweit <hkallweit1@...il.com> wrote:
>>
>>
>> In addition you could play with sysfs attributes
>> /sys/class/net/<if>/gro_flush_timeout
>> /sys/class/net/<if>/napi_defer_hard_irqs
>
> Interesting, I will look into that.
>
I run a 1Gbit chip with gro_flush_timeout = 20000 and napi_defer_hard_irqs = 1.
This helped to reduce interrupt load significantly under iperf3
(w/o interrupt coalescing at chip level)
>>> @@ -2407,7 +2409,7 @@ static int lan743x_rx_open(struct lan743x_rx *rx)
>>>
>>> netif_napi_add(adapter->netdev,
>>> &rx->napi, lan743x_rx_napi_poll,
>>> - rx->ring_size - 1);
>>> + 64);
>>
>> This value isn't completely arbitrary.
>> Better use constant NAPI_POLL_WEIGHT.
>>
>
> Thank you, I will change it in the next patch version.
>
Powered by blists - more mailing lists