mirror of
https://github.com/eunomia-bpf/bpf-developer-tutorial.git
synced 2026-10-29 03:34:44 +08:00
docs: add generated tutorial compatibility matrix (#212)
* docs: declare tutorial compatibility requirements * docs: generate tutorial compatibility matrix * fix: correct BPF Arena minimum kernel * refactor: simplify compatibility validation --------- Co-authored-by: LinuxDev9002 <i@littlefisher.me>
This commit is contained in:
@@ -1,2 +1,10 @@
|
||||
level=Depth
|
||||
type=Features
|
||||
kernel_min=6.9
|
||||
kernel_min_basis=documented
|
||||
architectures=x86_64,arm64
|
||||
btf=required
|
||||
kernel_config=CONFIG_BPF=y,CONFIG_BPF_SYSCALL=y,CONFIG_BPF_JIT=y,CONFIG_DEBUG_INFO_BTF=y
|
||||
hardware=none
|
||||
root=required
|
||||
test_status=ci-build
|
||||
|
||||
@@ -359,4 +359,4 @@ Our linked list example demonstrates the core arena concepts: defining an arena
|
||||
- **Linux Kernel Source:** `kernel/bpf/arena.c` - Arena implementation
|
||||
- **LLVM Address Spaces:** Documentation on `__arena` compiler support
|
||||
|
||||
This example is adapted from Meta's arena_list.c in the Linux kernel samples, with educational enhancements. Requires Linux kernel 6.10+ with `CONFIG_BPF_ARENA=y` enabled. Complete source code available in the tutorial repository.
|
||||
This example is adapted from Meta's arena_list.c in the Linux kernel samples, with educational enhancements. It requires Linux kernel 6.9+ with BPF JIT support (`CONFIG_BPF_JIT=y`). BPF arena is not controlled by a separate `CONFIG_BPF_ARENA` option. Complete source code is available in the tutorial repository.
|
||||
|
||||
@@ -357,4 +357,4 @@ BPF Arena 通过提供稀疏共享内存解决了传统 BPF map 的根本限制
|
||||
- **Linux 内核源码:** `kernel/bpf/arena.c` - Arena 实现
|
||||
- **LLVM 地址空间:** 关于 `__arena` 编译器支持的文档
|
||||
|
||||
此示例改编自 Linux 内核示例中 Meta 的 arena_list.c,并增加了教育性增强。需要 Linux 内核 6.10+ 并启用 `CONFIG_BPF_ARENA=y`。完整源代码可在教程仓库中获得。
|
||||
此示例改编自 Linux 内核示例中 Meta 的 arena_list.c,并增加了教育性增强。它需要 Linux 内核 6.9+ 并启用 BPF JIT(`CONFIG_BPF_JIT=y`);BPF arena 并没有独立的 `CONFIG_BPF_ARENA` 选项。完整源代码可在教程仓库中获得。
|
||||
|
||||
@@ -1,2 +1,10 @@
|
||||
level=Depth
|
||||
type=Features
|
||||
kernel_min=5.8
|
||||
kernel_min_basis=documented
|
||||
architectures=x86_64,arm64
|
||||
btf=required
|
||||
kernel_config=CONFIG_BPF=y,CONFIG_BPF_SYSCALL=y,CONFIG_DEBUG_INFO_BTF=y
|
||||
hardware=none
|
||||
root=required
|
||||
test_status=ci-build
|
||||
|
||||
@@ -1,2 +1,10 @@
|
||||
level=Depth
|
||||
type=Features
|
||||
kernel_min=6.9
|
||||
kernel_min_basis=documented
|
||||
architectures=x86_64,arm64
|
||||
btf=required
|
||||
kernel_config=CONFIG_BPF=y,CONFIG_BPF_SYSCALL=y,CONFIG_DEBUG_INFO_BTF=y,CONFIG_USER_NS=y
|
||||
hardware=none
|
||||
root=required
|
||||
test_status=ci-build
|
||||
|
||||
@@ -1,2 +1,10 @@
|
||||
level=Depth
|
||||
type=Features
|
||||
kernel_min=6.10
|
||||
kernel_min_basis=documented
|
||||
architectures=x86_64,arm64
|
||||
btf=required
|
||||
kernel_config=CONFIG_BPF=y,CONFIG_BPF_SYSCALL=y,CONFIG_BPF_EVENTS=y,CONFIG_BPF_JIT=y,CONFIG_DEBUG_INFO_BTF=y,CONFIG_FTRACE=y
|
||||
hardware=none
|
||||
root=required
|
||||
test_status=ci-build
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
level=Depth
|
||||
type=Features
|
||||
desc=BPF Dynamic Pointers for Variable-Length Data
|
||||
kernel_min=6.4
|
||||
kernel_min_basis=documented
|
||||
architectures=x86_64,arm64
|
||||
btf=required
|
||||
kernel_config=CONFIG_BPF=y,CONFIG_BPF_SYSCALL=y,CONFIG_DEBUG_INFO_BTF=y,CONFIG_NET_CLS_BPF=y|m,CONFIG_NET_SCHED=y
|
||||
hardware=network-interface
|
||||
root=required
|
||||
test_status=not-in-ci
|
||||
|
||||
@@ -1,2 +1,10 @@
|
||||
level=Depth
|
||||
type=Features
|
||||
kernel_min=unknown
|
||||
kernel_min_basis=unverified
|
||||
architectures=x86_64,arm64
|
||||
btf=required
|
||||
kernel_config=CONFIG_BPF=y,CONFIG_BPF_SYSCALL=y,CONFIG_BPF_JIT=y,CONFIG_DEBUG_INFO_BTF=y,CONFIG_DEBUG_INFO_BTF_MODULES=y,CONFIG_MODULES=y
|
||||
hardware=none
|
||||
root=required
|
||||
test_status=not-in-ci
|
||||
|
||||
Reference in New Issue
Block a user