Re: [PATCH net-next] net: stmmac: call stmmac_finalize_xdp_rx() on a condition

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 23. 3. 9. 22:40, Simon Horman wrote:
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@xxxxxxxxxx>
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

Thank you for the review.

The function must be called for only XDP_TX or XDP_REDIRECT cases.
So using a static key doesn't look good and the commit message is not clear for 'why' as well. I think that's why you suggested for using 'static key' by the latter reason.

I will edit the message and post v2 soon.

Best regards,
Leesoo



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux