[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZAnh0TGtDkVUl/1m@corigine.com>
Date: Thu, 9 Mar 2023 14:40:33 +0100
From: Simon Horman <simon.horman@...igine.com>
To: Leesoo Ahn <lsahn@...eel.net>
Cc: Giuseppe Cavallaro <peppe.cavallaro@...com>,
Alexandre Torgue <alexandre.torgue@...s.st.com>,
Jose Abreu <joabreu@...opsys.com>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Jesper Dangaard Brouer <hawk@...nel.org>,
John Fastabend <john.fastabend@...il.com>,
netdev@...r.kernel.org, linux-stm32@...md-mailman.stormreply.com,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
bpf@...r.kernel.org
Subject: Re: [PATCH net-next] net: stmmac: call stmmac_finalize_xdp_rx() on a
condition
On Thu, Mar 09, 2023 at 01:26:18AM +0900, Leesoo Ahn wrote:
> The current codebase calls the function no matter net device has XDP
> programs or not. So the finalize function is being called everytime when RX
> bottom-half in progress. It needs a few machine instructions for nothing
> in the case that XDP programs are not attached at all.
>
> Lets it call the function on a condition that if xdp_status variable has
> not zero value. That means XDP programs are attached to the net device
> and it should be finalized based on the variable.
>
> The following instructions show that it's better than calling the function
> unconditionally.
>
> 0.31 │6b8: ldr w0, [sp, #196]
> │ ┌──cbz w0, 6cc
> │ │ mov x1, x0
> │ │ mov x0, x27
> │ │→ bl stmmac_finalize_xdp_rx
> │6cc:└─→ldr x1, [sp, #176]
>
> with 'if (xdp_status)' statement, jump to '6cc' label if xdp_status has
> zero value.
>
> Signed-off-by: Leesoo Ahn <lsahn@...eel.net>
Hi Leesoo,
I am curious to know if you considered going a step further and using
a static key.
Link: https://www.kernel.org/doc/html/latest/staging/static-keys.html
Powered by blists - more mailing lists