[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241112145849.3436772-1-xukuohai@huaweicloud.com>
Date: Tue, 12 Nov 2024 22:58:46 +0800
From: Xu Kuohai <xukuohai@...weicloud.com>
To: bpf@...r.kernel.org,
netdev@...r.kernel.org
Cc: Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Andrii Nakryiko <andrii@...nel.org>,
Martin KaFai Lau <martin.lau@...ux.dev>,
Eduard Zingerman <eddyz87@...il.com>,
Yonghong Song <yonghong.song@...ux.dev>,
Kui-Feng Lee <thinker.li@...il.com>
Subject: [PATCH bpf-next v4 0/3] Add kernel symbol for struct_ops trampoline
Add kernel symbol for struct_ops trampoline.
Without kernel symbol for struct_ops trampoline, the unwinder may
produce unexpected stacktraces. For example, the x86 ORC and FP
unwinder stops stacktrace on a struct_ops trampoline address since
there is no kernel symbol for the address.
v4:
- Add a separate cleanup patch to remove unused member rcu from
bpf_struct_ops_map (patch 1)
- Use funcs_cnt instead of btf_type_vlen(vt) for links memory
calculation in .map_mem_usage (patch 2)
- Include ksyms[] memory in map_mem_usage (patch 3)
- Various fixes in patch 3 (Thanks to Martin)
v3: https://lore.kernel.org/bpf/20241111121641.2679885-1-xukuohai@huaweicloud.com/
- Add a separate cleanup patch to replace links_cnt with funcs_cnt
- Allocate ksyms on-demand in update_elem() to stay with the links
allocation way
- Set ksym name to prog__<struct_ops_name>_<member_name>
v2: https://lore.kernel.org/bpf/20241101111948.1570547-1-xukuohai@huaweicloud.com/
- Refine the commit message for clarity and fix a test bot warning
v1: https://lore.kernel.org/bpf/20241030111533.907289-1-xukuohai@huaweicloud.com/
Xu Kuohai (3):
bpf: Remove unused member rcu from bpf_struct_ops_map
bpf: Use function pointers count as struct_ops links count
bpf: Add kernel symbol for struct_ops trampoline
include/linux/bpf.h | 3 +-
kernel/bpf/bpf_struct_ops.c | 115 ++++++++++++++++++++++++++++++++----
kernel/bpf/dispatcher.c | 3 +-
kernel/bpf/trampoline.c | 9 ++-
4 files changed, 114 insertions(+), 16 deletions(-)
--
2.39.5
Powered by blists - more mailing lists