提交 fc8027e5 编写于 作者: A Andrii Nakryiko 提交者: Zheng Zengkai

libbpf: Expose btf_type_by_id() internally

mainline inclusion
from mainline-5.13-rc1
commit e14ef4bf
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I5EUVD
CVE: NA

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e14ef4bf011192b61b48c4f3a35b3041140073ff

-------------------------------------------------

btf_type_by_id() is internal-only convenience API returning non-const pointer
to struct btf_type. Expose it outside of btf.c for re-use.
Signed-off-by: NAndrii Nakryiko <andrii@kernel.org>
Signed-off-by: NAlexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20210318194036.3521577-2-andrii@kernel.org
(cherry picked from commit e14ef4bf)
Signed-off-by: NWang Yufen <wangyufen@huawei.com>
上级 a3578a1a
...@@ -441,7 +441,7 @@ const struct btf *btf__base_btf(const struct btf *btf) ...@@ -441,7 +441,7 @@ const struct btf *btf__base_btf(const struct btf *btf)
} }
/* internal helper returning non-const pointer to a type */ /* internal helper returning non-const pointer to a type */
static struct btf_type *btf_type_by_id(struct btf *btf, __u32 type_id) struct btf_type *btf_type_by_id(struct btf *btf, __u32 type_id)
{ {
if (type_id == 0) if (type_id == 0)
return &btf_void; return &btf_void;
......
...@@ -107,6 +107,11 @@ static inline void *libbpf_reallocarray(void *ptr, size_t nmemb, size_t size) ...@@ -107,6 +107,11 @@ static inline void *libbpf_reallocarray(void *ptr, size_t nmemb, size_t size)
return realloc(ptr, total); return realloc(ptr, total);
} }
struct btf;
struct btf_type;
struct btf_type *btf_type_by_id(struct btf *btf, __u32 type_id);
void *btf_add_mem(void **data, size_t *cap_cnt, size_t elem_sz, void *btf_add_mem(void **data, size_t *cap_cnt, size_t elem_sz,
size_t cur_cnt, size_t max_cnt, size_t add_cnt); size_t cur_cnt, size_t max_cnt, size_t add_cnt);
int btf_ensure_mem(void **data, size_t *cap_cnt, size_t elem_sz, size_t need_cnt); int btf_ensure_mem(void **data, size_t *cap_cnt, size_t elem_sz, size_t need_cnt);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册