进击的Lancelot
2024-12-27
来自广东
XDP 程序类型老师已经讲过,这里不再赘述。 TC 类型的返回值有 TC_ACT_OK(放行) 和 TC_ACT_SHOT(丢弃),可以参考 定义:https://elixir.bootlin.com/linux/v6.8/source/samples/bpf/net_shared.h#L17 示例:/samples/bpf/tc_l2_redirect_kern.c 至于 kprobe,大部分情况下返回值都是和 map 访问相关的错误处理,以 /samples/bpf/tracex6.bpf.c 为例,具体可以参考 get_map_perf_counter 实现(https://elixir.bootlin.com/linux/v6.8/source/kernel/trace/bpf_trace.c#L549)
1