bpf, bpftool: Fix incorrect disasm pc
[ Upstream commit 4d99e509 ] This patch addresses the bpftool issue "Wrong callq address displayed"[0]. The issue stemmed from an incorrect program counter (PC) value used during disassembly with LLVM or libbfd. For LLVM: The PC argument must represent the actual address in the kernel to compute the correct relative address. For libbfd: The relative address can be adjusted by adding func_ksym within the custom info->print_address_func to yield the correct address. Links: [0] https://github.com/libbpf/bpftool/issues/109 Changes: v2 -> v3: * Address comment from Quentin: * Remove the typedef. v1 -> v2: * Fix the broken libbfd disassembler. Fixes: e1947c75 ("bpftool: Refactor disassembler for JIT-ed programs") Signed-off-by:Leon Hwang <leon.hwang@linux.dev> Signed-off-by:
Andrii Nakryiko <andrii@kernel.org> Tested-by:
Quentin Monnet <qmo@kernel.org> Reviewed-by:
Quentin Monnet <qmo@kernel.org> Acked-by:
Yonghong Song <yonghong.song@linux.dev> Link: https://lore.kernel.org/bpf/20241031152844.68817-1-leon.hwang@linux.dev Signed-off-by:
Sasha Levin <sashal@kernel.org>
Loading
Please sign in to comment