diff options
author | Daniel T. Lee <danieltimlee@gmail.com> | 2020-11-24 09:03:04 +0000 |
---|---|---|
committer | Andrii Nakryiko <andrii@kernel.org> | 2020-11-26 19:33:35 -0800 |
commit | c5815ac7e2aaff4f00b2b9e21d84b9f2fddddb48 (patch) | |
tree | 67eab1bc0aa61911cb0190b38a9b4cf97f77ef90 /samples/bpf/hbm_kern.h | |
parent | fb3558127cb62ba2dea9e3d0efa1bb1d7e5eee2a (diff) | |
download | linux-c5815ac7e2aaff4f00b2b9e21d84b9f2fddddb48.tar.gz linux-c5815ac7e2aaff4f00b2b9e21d84b9f2fddddb48.tar.bz2 linux-c5815ac7e2aaff4f00b2b9e21d84b9f2fddddb48.zip |
samples: bpf: Refactor hbm program with libbpf
This commit refactors the existing cgroup programs with libbpf
bpf loader. Since bpf_program__attach doesn't support cgroup program
attachment, this explicitly attaches cgroup bpf program with
bpf_program__attach_cgroup(bpf_prog, cg1).
Also, to change attach_type of bpf program, this uses libbpf's
bpf_program__set_expected_attach_type helper to switch EGRESS to
INGRESS. To keep bpf program attached to the cgroup hierarchy even
after the exit, this commit uses the BPF_LINK_PINNING to pin the link
attachment even after it is closed.
Besides, this program was broken due to the typo of BPF MAP definition.
But this commit solves the problem by fixing this from 'queue_stats' map
struct hvm_queue_stats -> hbm_queue_stats.
Fixes: 36b5d471135c ("selftests/bpf: samples/bpf: Split off legacy stuff from bpf_helpers.h")
Signed-off-by: Daniel T. Lee <danieltimlee@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20201124090310.24374-2-danieltimlee@gmail.com
Diffstat (limited to 'samples/bpf/hbm_kern.h')
-rw-r--r-- | samples/bpf/hbm_kern.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/samples/bpf/hbm_kern.h b/samples/bpf/hbm_kern.h index e00f26f6afba..722b3fadb467 100644 --- a/samples/bpf/hbm_kern.h +++ b/samples/bpf/hbm_kern.h @@ -69,7 +69,7 @@ struct { __uint(type, BPF_MAP_TYPE_ARRAY); __uint(max_entries, 1); __type(key, u32); - __type(value, struct hvm_queue_stats); + __type(value, struct hbm_queue_stats); } queue_stats SEC(".maps"); struct hbm_pkt_info { |