mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
bpf: btf: Ensure t->type == 0 for BTF_KIND_FWD
The t->type in BTF_KIND_FWD is not used. It must be 0. This patch ensures that and also adds a test case in test_btf.c Signed-off-by: Martin KaFai Lau <kafai@fb.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Signed-off-by: Cyber Knight <cyberknight755@gmail.com>
This commit is contained in:
parent
7c91077981
commit
c77bbc8ea6
@ -1240,8 +1240,27 @@ static struct btf_kind_operations ptr_ops = {
|
||||
.seq_show = btf_ptr_seq_show,
|
||||
};
|
||||
|
||||
static s32 btf_fwd_check_meta(struct btf_verifier_env *env,
|
||||
const struct btf_type *t,
|
||||
u32 meta_left)
|
||||
{
|
||||
if (btf_type_vlen(t)) {
|
||||
btf_verifier_log_type(env, t, "vlen != 0");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (t->type) {
|
||||
btf_verifier_log_type(env, t, "type != 0");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
btf_verifier_log_type(env, t, NULL);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct btf_kind_operations fwd_ops = {
|
||||
.check_meta = btf_ref_type_check_meta,
|
||||
.check_meta = btf_fwd_check_meta,
|
||||
.resolve = btf_df_resolve,
|
||||
.check_member = btf_df_check_member,
|
||||
.log_details = btf_ref_type_log,
|
||||
|
Loading…
x
Reference in New Issue
Block a user