bpf: fix potential error return
authorAnton Protopopov <aspsk@isovalent.com>
Tue, 10 Dec 2024 11:42:45 +0000 (11:42 +0000)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 10 Dec 2024 19:17:53 +0000 (11:17 -0800)
commitc4441ca86afe4814039ee1b32c39d833c1a16bbc
tree3112465a5fa03bfe57455d23b72a67771819dc28
parentcf8b876363da4fccdcc4ba209d4d098ec0f1ffac
bpf: fix potential error return

The bpf_remove_insns() function returns WARN_ON_ONCE(error), where
error is a result of bpf_adj_branches(), and thus should be always 0
However, if for any reason it is not 0, then it will be converted to
boolean by WARN_ON_ONCE and returned to user space as 1, not an actual
error value. Fix this by returning the original err after the WARN check.

Signed-off-by: Anton Protopopov <aspsk@isovalent.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Acked-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/r/20241210114245.836164-1-aspsk@isovalent.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
kernel/bpf/core.c