Commit c29a4920 authored by Yuntao Wang's avatar Yuntao Wang Committed by Alexei Starovoitov

bpf: Fix maximum permitted number of arguments check

Since the m->arg_size array can hold up to MAX_BPF_FUNC_ARGS argument
sizes, it's ok that nargs is equal to MAX_BPF_FUNC_ARGS.
Signed-off-by: default avatarYuntao Wang <ytcoode@gmail.com>
Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
Acked-by: default avatarMartin KaFai Lau <kafai@fb.com>
Link: https://lore.kernel.org/bpf/20220324164238.1274915-1-ytcoode@gmail.com
parent 98870605
...@@ -5507,7 +5507,7 @@ int btf_distill_func_proto(struct bpf_verifier_log *log, ...@@ -5507,7 +5507,7 @@ int btf_distill_func_proto(struct bpf_verifier_log *log,
} }
args = (const struct btf_param *)(func + 1); args = (const struct btf_param *)(func + 1);
nargs = btf_type_vlen(func); nargs = btf_type_vlen(func);
if (nargs >= MAX_BPF_FUNC_ARGS) { if (nargs > MAX_BPF_FUNC_ARGS) {
bpf_log(log, bpf_log(log,
"The function %s has %d arguments. Too many.\n", "The function %s has %d arguments. Too many.\n",
tname, nargs); tname, nargs);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment