mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
selftests/bpf: Don't cast a pointer to .bss in arena_htab_asm
arena_htab_asm is arena_htab.c with BPF_ARENA_FORCE_ASM. In this variant __arena has no address space, so arr1 is in .bss, and cast_kern() is a real insn. cast_kern(arr) turns the pointer to .bss into an offset in the arena. Each of the 100000 stores to arr[i] faults, and the fault handler of the arena skips it. Remove the cast. In the other variant it is a nop. The prog takes 67 ms in place of 950 ms on a kernel with lockdep. With one time slice for all may_goto of a prog, may_goto stops the loops of the old prog after 250 ms. The test does not see that, because it looks at the first keys only. Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://patch.msgid.link/20261031215543.682284-3-alexei.starovoitov@gmail.com
This commit is contained in:
parent
1ddffb57b3
commit
fcda8096dc
|
|
@ -34,8 +34,6 @@ int arena_htab_llvm(void *ctx)
|
|||
cast_kern(htab);
|
||||
htab_init(htab);
|
||||
|
||||
cast_kern(arr);
|
||||
|
||||
/* first run. No old elems in the table */
|
||||
for (i = zero; i < 100000 && can_loop; i++) {
|
||||
htab_update_elem(htab, i, i);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user