diff options
| author | Alexei Starovoitov <ast@kernel.org> | 2026-10-27 19:02:57 +0000 |
|---|---|---|
| committer | Alexei Starovoitov <ast@kernel.org> | 2026-10-28 04:07:02 +0000 |
| commit | 5b0678b2f9b96fa44c9a47655428fe1706fdf9a7 (patch) | |
| tree | 480b7cb2176268d3d6855d4d2e2776960839697e /kernel | |
| parent | 3c13b2e5a40e2984b0e0addd83a33631938138a0 (diff) | |
libbpf: Remove .arena.data
Rust has no address spaces. Thus a global variable cannot have the __arena
attribute. The .arena.data section was a workaround. It told libbpf to do
two things:
- Move .data, .bss and .rodata into arena.
- Load the progs with BPF_F_ARENA_SCALAR.
The compiler must select the location of a variable, not libbpf. libbpf
already puts the .addr_space.1 section in arena. The __arena variables of C
are in this section, and LLVM can use it for Rust too. Until LLVM does
that, the global data of Rust progs stays in array maps.
This reverts commit 8ab58ed42b08 ("libbpf: Keep global data in arena when
the object has .arena.data"). libbpf 1.8.0 does not have the section.
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://patch.msgid.link/20261027190314.1440199-3-alexei.starovoitov@gmail.com
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions
