diff options
| author | Tiezhu Yang <yangtiezhu@loongson.cn> | 2026-07-01 11:51:07 +0800 |
|---|---|---|
| committer | Andrii Nakryiko <andrii@kernel.org> | 2026-07-01 12:59:49 -0700 |
| commit | 475b59db3bd5c7717b5441481ac06f226815cb0a (patch) | |
| tree | a571e9128df41b5053bc411eea9484a748bc8e8c | |
| parent | b4b8b334f6b535a86ab83f18d3d241fe01270bc3 (diff) | |
| download | linux-475b59db3bd5c7717b5441481ac06f226815cb0a.tar.gz linux-475b59db3bd5c7717b5441481ac06f226815cb0a.zip | |
bpf: Use BPF_CALL_IMM macro consistently in bpf_do_misc_fixups
In bpf_do_misc_fixups(), the conversion from a function address to a
BPF immediate value is handled using the BPF_CALL_IMM macro inside the
'patch_map_ops_generic' label block. However, immediately following it
in the 'patch_call_imm' label block, the immediate value is calculated
manually by subtracting __bpf_call_base from fn->func.
Inspired by KaFai Wan's review comments on fixing helper call offsets,
use the BPF_CALL_IMM macro in 'patch_call_imm' as well to clean this up.
This removes the redundant manual pointer arithmetic and ensures coding
style consistency across adjacent label blocks within the same function.
Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20260701035107.8069-1-yangtiezhu@loongson.cn
| -rw-r--r-- | kernel/bpf/fixups.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/bpf/fixups.c b/kernel/bpf/fixups.c index 3cf2cc6e3ab6..12a8a4eb757f 100644 --- a/kernel/bpf/fixups.c +++ b/kernel/bpf/fixups.c @@ -2338,7 +2338,7 @@ patch_call_imm: func_id_name(insn->imm), insn->imm); return -EFAULT; } - insn->imm = fn->func - __bpf_call_base; + insn->imm = BPF_CALL_IMM(fn->func); next_insn: if (subprogs[cur_subprog + 1].start == i + delta + 1) { subprogs[cur_subprog].stack_depth += stack_depth_extra; |
