diff options
| author | 2022-04-08 13:41:31 +0100 | |
|---|---|---|
| committer | 2022-04-08 13:41:31 +0100 | |
| commit | 4a778f3d53df3c8582d7417d9ea62bb8d099446a (patch) | |
| tree | e210c8530810997918899b176282c58d15ef65f3 /tools/testing/selftests/bpf/prog_tests/prog_array_init.c | |
| parent | Merge branch 'aspeed-mdio-c45' (diff) | |
| parent | ice: switch: convert packet template match code to rodata (diff) | |
| download | linux-dev-4a778f3d53df3c8582d7417d9ea62bb8d099446a.tar.xz linux-dev-4a778f3d53df3c8582d7417d9ea62bb8d099446a.zip | |
Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/nex
t-queue
Tony Nguyen says:
====================
100GbE Intel Wired LAN Driver Updates 2022-04-07
Alexander Lobakin says:
This hunts down several places around packet templates/dummies for
switch rules which are either repetitive, fragile or just not
really readable code.
It's a common need to add new packet templates and to review such
changes as well, try to simplify both with the help of a pair
macros and aliases.
ice_find_dummy_packet() became very complex at this point with tons
of nested if-elses. It clearly showed this approach does not scale,
so convert its logics to the simple mask-match + static const array.
bloat-o-meter is happy about that (built w/ LLVM 13):
add/remove: 0/1 grow/shrink: 1/1 up/down: 2/-1058 (-1056)
Function old new delta
ice_fill_adv_dummy_packet 289 291 +2
ice_adv_add_update_vsi_list 201 - -201
ice_add_adv_rule 2950 2093 -857
Total: Before=414512, After=413456, chg -0.25%
add/remove: 53/52 grow/shrink: 0/0 up/down: 4660/-3988 (672)
RO Data old new delta
ice_dummy_pkt_profiles - 672 +672
Total: Before=37895, After=38567, chg +1.77%
Diffstat also looks nice, and adding new packet templates now takes
less lines.
We'll probably come out with dynamic template crafting in a while,
but for now let's improve what we have currently.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'tools/testing/selftests/bpf/prog_tests/prog_array_init.c')
0 files changed, 0 insertions, 0 deletions
