-
Notifications
You must be signed in to change notification settings - Fork 153
xsk: refactors around generic xmit side #9862
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: bpf-next_base
Are you sure you want to change the base?
Conversation
Upstream branch: dd948aa |
cdc41a9
to
d942901
Compare
Upstream branch: 5730dac |
fbbce29
to
d389433
Compare
Upstream branch: 5730dac |
d389433
to
06b867d
Compare
d942901
to
daaba7e
Compare
Upstream branch: 5730dac |
06b867d
to
44a8057
Compare
AI review job summary: https://github.com/kernel-patches/bpf/actions/runs/18018331618 Inline review:
|
daaba7e
to
1a1a83b
Compare
Upstream branch: 9b5c111 |
44a8057
to
da2a616
Compare
1a1a83b
to
5cd6192
Compare
Upstream branch: 1193c46 |
da2a616
to
6287017
Compare
5cd6192
to
f95f559
Compare
Upstream branch: 105eb5d |
6287017
to
0bed9e8
Compare
f95f559
to
8c94dce
Compare
Upstream branch: d43029f |
0bed9e8
to
fe97b7c
Compare
Upstream branch: d43029f |
fe97b7c
to
40d907f
Compare
Upstream branch: d43029f |
40d907f
to
7dd4447
Compare
8c94dce
to
08faa6d
Compare
We are unnecessarily setting a bunch of skb fields per each processed descriptor, which is redundant for fragmented frames. Let us set these respective members for first fragment only. To address both paths that we have within xsk_build_skb(), move assignments onto xsk_set_destructor_arg() and rename it to xsk_skb_init_misc(). Signed-off-by: Maciej Fijalkowski <[email protected]> Acked-by: Stanislav Fomichev <[email protected]> Reviewed-by: Jason Xing <[email protected]>
Instead of using auxiliary boolean that tracks if we are at first frag when gathering all elements of skb, same functionality can be achieved with checking if skb_shared_info::nr_frags is 0. Remove @first_frag but be careful around xsk_build_skb_zerocopy() and NULL the skb pointer when it failed so that common error path does not incorrectly interpret it during decision whether to call kfree_skb(). Signed-off-by: Maciej Fijalkowski <[email protected]> Acked-by: Stanislav Fomichev <[email protected]> Reviewed-by: Jason Xing <[email protected]>
Upstream branch: 991e555 |
xsk_build_skb() has gone wild with its size and one of the things we can do about it is to pull out a branch that takes care of metadata handling and make it a separate function. While at it, let us add metadata SW support for devices supporting IFF_TX_SKB_NO_LINEAR flag, that happen to have separate logic for building skb in xsk's generic xmit path. Acked-by: Stanislav Fomichev <[email protected]> Reviewed-by: Jason Xing <[email protected]> Signed-off-by: Maciej Fijalkowski <[email protected]>
7dd4447
to
5bbcc19
Compare
ccd38c1
to
bc1a71f
Compare
c199778
to
b0c73f0
Compare
Pull request for series with
subject: xsk: refactors around generic xmit side
version: 2
url: https://patchwork.kernel.org/project/netdevbpf/list/?series=1006276