2021-01-08 02:11:12

by 彭浩(Richard)

[permalink] [raw]
Subject: [PATCH] tools/bpf: Remove unnecessary parameter in bpf_object__probe_loading

struct bpf_object *obj is not used in bpf_object__probe_loading, so we
can remove it.

Signed-off-by: Peng Hao <[email protected]>
---
tools/lib/bpf/libbpf.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
index 313034117070..17d90779f09a 100644
--- a/tools/lib/bpf/libbpf.c
+++ b/tools/lib/bpf/libbpf.c
@@ -3685,7 +3685,7 @@ int bpf_map__resize(struct bpf_map *map, __u32 max_entries)
}

static int
-bpf_object__probe_loading(struct bpf_object *obj)
+bpf_object__probe_loading(void)
{
struct bpf_load_program_attr attr;
char *cp, errmsg[STRERR_BUFSIZE];
@@ -7258,7 +7258,7 @@ int bpf_object__load_xattr(struct bpf_object_load_attr *attr)
return -EINVAL;
}

- err = bpf_object__probe_loading(obj);
+ err = bpf_object__probe_loading();
err = err ? : bpf_object__load_vmlinux_btf(obj);
err = err ? : bpf_object__resolve_externs(obj, obj->kconfig);
err = err ? : bpf_object__sanitize_and_load_btf(obj);
--
2.18.4


2021-01-08 17:23:51

by Yonghong Song

[permalink] [raw]
Subject: Re: [PATCH] tools/bpf: Remove unnecessary parameter in bpf_object__probe_loading



On 1/7/21 6:08 PM, 彭浩(Richard) wrote:
> struct bpf_object *obj is not used in bpf_object__probe_loading, so we
> can remove it.
>
> Signed-off-by: Peng Hao <[email protected]>

Acked-by: Yonghong Song <[email protected]>

2021-01-08 20:27:33

by Andrii Nakryiko

[permalink] [raw]
Subject: Re: [PATCH] tools/bpf: Remove unnecessary parameter in bpf_object__probe_loading

On Thu, Jan 7, 2021 at 6:08 PM 彭浩(Richard) <[email protected]> wrote:
>
> struct bpf_object *obj is not used in bpf_object__probe_loading, so we
> can remove it.
>
> Signed-off-by: Peng Hao <[email protected]>
> ---

It causes no harm, no performance cost, and no maintenance issues. I
consider eventually allowing to have a per-bpf_object log callback (as
opposed to current global one), so at that time I'd need to re-add
struct bpf_object back to this. Which means just unnecessary code
churn.

So thanks for the patch, there is nothing wrong with it, but I'll
leave this code as is for now. Thanks!


> tools/lib/bpf/libbpf.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
> index 313034117070..17d90779f09a 100644
> --- a/tools/lib/bpf/libbpf.c
> +++ b/tools/lib/bpf/libbpf.c
> @@ -3685,7 +3685,7 @@ int bpf_map__resize(struct bpf_map *map, __u32 max_entries)
> }
>
> static int
> -bpf_object__probe_loading(struct bpf_object *obj)
> +bpf_object__probe_loading(void)
> {
> struct bpf_load_program_attr attr;
> char *cp, errmsg[STRERR_BUFSIZE];
> @@ -7258,7 +7258,7 @@ int bpf_object__load_xattr(struct bpf_object_load_attr *attr)
> return -EINVAL;
> }
>
> - err = bpf_object__probe_loading(obj);
> + err = bpf_object__probe_loading();
> err = err ? : bpf_object__load_vmlinux_btf(obj);
> err = err ? : bpf_object__resolve_externs(obj, obj->kconfig);
> err = err ? : bpf_object__sanitize_and_load_btf(obj);
> --
> 2.18.4