[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZHCNdEez3yN0Vccb@nanopsycho>
Date: Fri, 26 May 2023 12:44:04 +0200
From: Jiri Pirko <jiri@...nulli.us>
To: Haiyang Zhang <haiyangz@...rosoft.com>
Cc: linux-hyperv@...r.kernel.org, netdev@...r.kernel.org,
decui@...rosoft.com, kys@...rosoft.com, paulros@...rosoft.com,
olaf@...fle.de, vkuznets@...hat.com, davem@...emloft.net,
wei.liu@...nel.org, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, leon@...nel.org, longli@...rosoft.com,
ssengar@...ux.microsoft.com, linux-rdma@...r.kernel.org,
daniel@...earbox.net, john.fastabend@...il.com,
bpf@...r.kernel.org, ast@...nel.org, sharmaajay@...rosoft.com,
hawk@...nel.org, linux-kernel@...r.kernel.org,
stable@...r.kernel.org
Subject: Re: [PATCH net] net: mana: Fix perf regression: remove rx_cqes,
tx_cqes counters
Wed, May 24, 2023 at 11:22:00PM CEST, haiyangz@...rosoft.com wrote:
>The apc->eth_stats.rx_cqes is one per NIC (vport), and it's on the
>frequent and parallel code path of all queues. So, r/w into this
>single shared variable by many threads on different CPUs creates a
>lot caching and memory overhead, hence perf regression. And, it's
>not accurate due to the high volume concurrent r/w.
>
>Since the error path of mana_poll_rx_cq() already has warnings, so
>keeping the counter and convert it to a per-queue variable is not
>necessary. So, just remove this counter from this high frequency
>code path.
>
>Also, remove the tx_cqes counter for the same reason. We have
>warnings & other counters for errors on that path, and don't need
>to count every normal cqe processing.
>
>Cc: stable@...r.kernel.org
>Fixes: bd7fc6e1957c ("net: mana: Add new MANA VF performance counters for easier troubleshooting")
>Signed-off-by: Haiyang Zhang <haiyangz@...rosoft.com>
Reviewed-by: Jiri Pirko <jiri@...dia.com>
Powered by blists - more mailing lists