forked from Minki/linux
perf bpf-loader: Use IS_ERR_OR_NULL() to clean code and fix check
Use IS_ERR_OR_NULL() to make the code cleaner. Also if the priv is NULL, it's improper to call PTR_ERR(priv). Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Andrii Nakryiko <andrii@kernel.org> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: Jiri Olsa <jolsa@redhat.com> Cc: John Fastabend <john.fastabend@gmail.com> Cc: KP Singh <kpsingh@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Martin KaFai Lau <kafai@fb.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Song Liu <songliubraving@fb.com> Cc: Yonghong Song <yhs@fb.com> Cc: bpf@vger.kernel.org Cc: netdev@vger.kernel.org Cc: unlisted-recipients Link: http://lore.kernel.org/lkml/20211212135613.20000-1-linmq006@gmail.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
7cc9680c4b
commit
8acf3793ea
@ -421,7 +421,7 @@ preproc_gen_prologue(struct bpf_program *prog, int n,
|
|||||||
size_t prologue_cnt = 0;
|
size_t prologue_cnt = 0;
|
||||||
int i, err;
|
int i, err;
|
||||||
|
|
||||||
if (IS_ERR(priv) || !priv || priv->is_tp)
|
if (IS_ERR_OR_NULL(priv) || priv->is_tp)
|
||||||
goto errout;
|
goto errout;
|
||||||
|
|
||||||
pev = &priv->pev;
|
pev = &priv->pev;
|
||||||
@ -570,7 +570,7 @@ static int hook_load_preprocessor(struct bpf_program *prog)
|
|||||||
bool need_prologue = false;
|
bool need_prologue = false;
|
||||||
int err, i;
|
int err, i;
|
||||||
|
|
||||||
if (IS_ERR(priv) || !priv) {
|
if (IS_ERR_OR_NULL(priv)) {
|
||||||
pr_debug("Internal error when hook preprocessor\n");
|
pr_debug("Internal error when hook preprocessor\n");
|
||||||
return -BPF_LOADER_ERRNO__INTERNAL;
|
return -BPF_LOADER_ERRNO__INTERNAL;
|
||||||
}
|
}
|
||||||
@ -642,8 +642,11 @@ int bpf__probe(struct bpf_object *obj)
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
priv = bpf_program__priv(prog);
|
priv = bpf_program__priv(prog);
|
||||||
if (IS_ERR(priv) || !priv) {
|
if (IS_ERR_OR_NULL(priv)) {
|
||||||
err = PTR_ERR(priv);
|
if (!priv)
|
||||||
|
err = -BPF_LOADER_ERRNO__INTERNAL;
|
||||||
|
else
|
||||||
|
err = PTR_ERR(priv);
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -693,7 +696,7 @@ int bpf__unprobe(struct bpf_object *obj)
|
|||||||
struct bpf_prog_priv *priv = bpf_program__priv(prog);
|
struct bpf_prog_priv *priv = bpf_program__priv(prog);
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (IS_ERR(priv) || !priv || priv->is_tp)
|
if (IS_ERR_OR_NULL(priv) || priv->is_tp)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
for (i = 0; i < priv->pev.ntevs; i++) {
|
for (i = 0; i < priv->pev.ntevs; i++) {
|
||||||
@ -751,7 +754,7 @@ int bpf__foreach_event(struct bpf_object *obj,
|
|||||||
struct perf_probe_event *pev;
|
struct perf_probe_event *pev;
|
||||||
int i, fd;
|
int i, fd;
|
||||||
|
|
||||||
if (IS_ERR(priv) || !priv) {
|
if (IS_ERR_OR_NULL(priv)) {
|
||||||
pr_debug("bpf: failed to get private field\n");
|
pr_debug("bpf: failed to get private field\n");
|
||||||
return -BPF_LOADER_ERRNO__INTERNAL;
|
return -BPF_LOADER_ERRNO__INTERNAL;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user