diff options
author | Björn Töpel <[email protected]> | 2019-10-22 09:22:06 +0200 |
---|---|---|
committer | Alexei Starovoitov <[email protected]> | 2019-10-23 10:03:52 -0700 |
commit | d7d962a095474fcd94861d5f4cccada2e4215aae (patch) | |
tree | 476fba2fcb5dcea9bbaf8ea492e45ba5eae9f2ae /tools/perf/scripts/python/export-to-postgresql.py | |
parent | 5e5b03d163e15a40b0fa57c70b4e8edd549b0b98 (diff) |
libbpf: Use implicit XSKMAP lookup from AF_XDP XDP program
In commit 43e74c0267a3 ("bpf_xdp_redirect_map: Perform map lookup in
eBPF helper") the bpf_redirect_map() helper learned to do map lookup,
which means that the explicit lookup in the XDP program for AF_XDP is
not needed for post-5.3 kernels.
This commit adds the implicit map lookup with default action, which
improves the performance for the "rx_drop" [1] scenario with ~4%.
For pre-5.3 kernels, the bpf_redirect_map() returns XDP_ABORTED, and a
fallback path for backward compatibility is entered, where explicit
lookup is still performed. This means a slight regression for older
kernels (an additional bpf_redirect_map() call), but I consider that a
fair punishment for users not upgrading their kernels. ;-)
v1->v2: Backward compatibility (Toke) [2]
v2->v3: Avoid masking/zero-extension by using JMP32 [3]
[1] # xdpsock -i eth0 -z -r
[2] https://lore.kernel.org/bpf/[email protected]/
[3] https://lore.kernel.org/bpf/[email protected]/
Suggested-by: Toke Høiland-Jørgensen <[email protected]>
Signed-off-by: Björn Töpel <[email protected]>
Signed-off-by: Alexei Starovoitov <[email protected]>
Acked-by: Toke Høiland-Jørgensen <[email protected]>
Link: https://lore.kernel.org/bpf/[email protected]
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions