Messages in this thread Patch in this message | | | From | xiakaixu1987@gmail ... | Subject | [PATCH v3] bpf: Fix unsigned 'datasec_id' compared with zero in check_pseudo_btf_id | Date | Wed, 11 Nov 2020 13:03:46 +0800 |
| |
From: Kaixu Xia <kaixuxia@tencent.com>
The unsigned variable datasec_id is assigned a return value from the call to check_pseudo_btf_id(), which may return negative error code.
Fixes coccicheck warning:
./kernel/bpf/verifier.c:9616:5-15: WARNING: Unsigned expression compared with zero: datasec_id > 0
Reported-by: Tosk Robot <tencent_os_robot@tencent.com> Signed-off-by: Kaixu Xia <kaixuxia@tencent.com> --- v3: -put the changes on the proper place.
v2: -split out datasec_id definition into a separate line.
kernel/bpf/verifier.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c index 6200519582a6..6204ec705d80 100644 --- a/kernel/bpf/verifier.c +++ b/kernel/bpf/verifier.c @@ -9572,12 +9572,13 @@ static int check_pseudo_btf_id(struct bpf_verifier_env *env, struct bpf_insn *insn, struct bpf_insn_aux_data *aux) { - u32 datasec_id, type, id = insn->imm; const struct btf_var_secinfo *vsi; const struct btf_type *datasec; const struct btf_type *t; const char *sym_name; bool percpu = false; + u32 type, id = insn->imm; + s32 datasec_id; u64 addr; int i; -- 2.20.0
| |