Commit 629dfc66 authored by Ilya Leoshkevich's avatar Ilya Leoshkevich Committed by Andrii Nakryiko

libbpf: Use bpf_{btf,link,map,prog}_get_info_by_fd()

Use the new type-safe wrappers around bpf_obj_get_info_by_fd().
Signed-off-by: default avatarIlya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20230214231221.249277-3-iii@linux.ibm.com
parent 55a9ed0e
...@@ -1350,9 +1350,9 @@ struct btf *btf_get_from_fd(int btf_fd, struct btf *base_btf) ...@@ -1350,9 +1350,9 @@ struct btf *btf_get_from_fd(int btf_fd, struct btf *base_btf)
void *ptr; void *ptr;
int err; int err;
/* we won't know btf_size until we call bpf_obj_get_info_by_fd(). so /* we won't know btf_size until we call bpf_btf_get_info_by_fd(). so
* let's start with a sane default - 4KiB here - and resize it only if * let's start with a sane default - 4KiB here - and resize it only if
* bpf_obj_get_info_by_fd() needs a bigger buffer. * bpf_btf_get_info_by_fd() needs a bigger buffer.
*/ */
last_size = 4096; last_size = 4096;
ptr = malloc(last_size); ptr = malloc(last_size);
...@@ -1362,7 +1362,7 @@ struct btf *btf_get_from_fd(int btf_fd, struct btf *base_btf) ...@@ -1362,7 +1362,7 @@ struct btf *btf_get_from_fd(int btf_fd, struct btf *base_btf)
memset(&btf_info, 0, sizeof(btf_info)); memset(&btf_info, 0, sizeof(btf_info));
btf_info.btf = ptr_to_u64(ptr); btf_info.btf = ptr_to_u64(ptr);
btf_info.btf_size = last_size; btf_info.btf_size = last_size;
err = bpf_obj_get_info_by_fd(btf_fd, &btf_info, &len); err = bpf_btf_get_info_by_fd(btf_fd, &btf_info, &len);
if (!err && btf_info.btf_size > last_size) { if (!err && btf_info.btf_size > last_size) {
void *temp_ptr; void *temp_ptr;
...@@ -1380,7 +1380,7 @@ struct btf *btf_get_from_fd(int btf_fd, struct btf *base_btf) ...@@ -1380,7 +1380,7 @@ struct btf *btf_get_from_fd(int btf_fd, struct btf *base_btf)
btf_info.btf = ptr_to_u64(ptr); btf_info.btf = ptr_to_u64(ptr);
btf_info.btf_size = last_size; btf_info.btf_size = last_size;
err = bpf_obj_get_info_by_fd(btf_fd, &btf_info, &len); err = bpf_btf_get_info_by_fd(btf_fd, &btf_info, &len);
} }
if (err || btf_info.btf_size > last_size) { if (err || btf_info.btf_size > last_size) {
......
...@@ -4345,7 +4345,7 @@ int bpf_map__reuse_fd(struct bpf_map *map, int fd) ...@@ -4345,7 +4345,7 @@ int bpf_map__reuse_fd(struct bpf_map *map, int fd)
char *new_name; char *new_name;
memset(&info, 0, len); memset(&info, 0, len);
err = bpf_obj_get_info_by_fd(fd, &info, &len); err = bpf_map_get_info_by_fd(fd, &info, &len);
if (err && errno == EINVAL) if (err && errno == EINVAL)
err = bpf_get_map_info_from_fdinfo(fd, &info); err = bpf_get_map_info_from_fdinfo(fd, &info);
if (err) if (err)
...@@ -4729,7 +4729,7 @@ static int probe_module_btf(void) ...@@ -4729,7 +4729,7 @@ static int probe_module_btf(void)
* kernel's module BTF support coincides with support for * kernel's module BTF support coincides with support for
* name/name_len fields in struct bpf_btf_info. * name/name_len fields in struct bpf_btf_info.
*/ */
err = bpf_obj_get_info_by_fd(fd, &info, &len); err = bpf_btf_get_info_by_fd(fd, &info, &len);
close(fd); close(fd);
return !err; return !err;
} }
...@@ -4892,7 +4892,7 @@ static bool map_is_reuse_compat(const struct bpf_map *map, int map_fd) ...@@ -4892,7 +4892,7 @@ static bool map_is_reuse_compat(const struct bpf_map *map, int map_fd)
int err; int err;
memset(&map_info, 0, map_info_len); memset(&map_info, 0, map_info_len);
err = bpf_obj_get_info_by_fd(map_fd, &map_info, &map_info_len); err = bpf_map_get_info_by_fd(map_fd, &map_info, &map_info_len);
if (err && errno == EINVAL) if (err && errno == EINVAL)
err = bpf_get_map_info_from_fdinfo(map_fd, &map_info); err = bpf_get_map_info_from_fdinfo(map_fd, &map_info);
if (err) { if (err) {
...@@ -5437,7 +5437,7 @@ static int load_module_btfs(struct bpf_object *obj) ...@@ -5437,7 +5437,7 @@ static int load_module_btfs(struct bpf_object *obj)
info.name = ptr_to_u64(name); info.name = ptr_to_u64(name);
info.name_len = sizeof(name); info.name_len = sizeof(name);
err = bpf_obj_get_info_by_fd(fd, &info, &len); err = bpf_btf_get_info_by_fd(fd, &info, &len);
if (err) { if (err) {
err = -errno; err = -errno;
pr_warn("failed to get BTF object #%d info: %d\n", id, err); pr_warn("failed to get BTF object #%d info: %d\n", id, err);
...@@ -9030,9 +9030,9 @@ static int libbpf_find_prog_btf_id(const char *name, __u32 attach_prog_fd) ...@@ -9030,9 +9030,9 @@ static int libbpf_find_prog_btf_id(const char *name, __u32 attach_prog_fd)
int err; int err;
memset(&info, 0, info_len); memset(&info, 0, info_len);
err = bpf_obj_get_info_by_fd(attach_prog_fd, &info, &info_len); err = bpf_prog_get_info_by_fd(attach_prog_fd, &info, &info_len);
if (err) { if (err) {
pr_warn("failed bpf_obj_get_info_by_fd for FD %d: %d\n", pr_warn("failed bpf_prog_get_info_by_fd for FD %d: %d\n",
attach_prog_fd, err); attach_prog_fd, err);
return err; return err;
} }
...@@ -11741,7 +11741,7 @@ static struct perf_buffer *__perf_buffer__new(int map_fd, size_t page_cnt, ...@@ -11741,7 +11741,7 @@ static struct perf_buffer *__perf_buffer__new(int map_fd, size_t page_cnt,
/* best-effort sanity checks */ /* best-effort sanity checks */
memset(&map, 0, sizeof(map)); memset(&map, 0, sizeof(map));
map_info_len = sizeof(map); map_info_len = sizeof(map);
err = bpf_obj_get_info_by_fd(map_fd, &map, &map_info_len); err = bpf_map_get_info_by_fd(map_fd, &map, &map_info_len);
if (err) { if (err) {
err = -errno; err = -errno;
/* if BPF_OBJ_GET_INFO_BY_FD is supported, will return /* if BPF_OBJ_GET_INFO_BY_FD is supported, will return
......
...@@ -689,7 +689,7 @@ static int tc_add_fd_and_name(struct libbpf_nla_req *req, int fd) ...@@ -689,7 +689,7 @@ static int tc_add_fd_and_name(struct libbpf_nla_req *req, int fd)
int len, ret; int len, ret;
memset(&info, 0, info_len); memset(&info, 0, info_len);
ret = bpf_obj_get_info_by_fd(fd, &info, &info_len); ret = bpf_prog_get_info_by_fd(fd, &info, &info_len);
if (ret < 0) if (ret < 0)
return ret; return ret;
......
...@@ -83,7 +83,7 @@ int ring_buffer__add(struct ring_buffer *rb, int map_fd, ...@@ -83,7 +83,7 @@ int ring_buffer__add(struct ring_buffer *rb, int map_fd,
memset(&info, 0, sizeof(info)); memset(&info, 0, sizeof(info));
err = bpf_obj_get_info_by_fd(map_fd, &info, &len); err = bpf_map_get_info_by_fd(map_fd, &info, &len);
if (err) { if (err) {
err = -errno; err = -errno;
pr_warn("ringbuf: failed to get map info for fd=%d: %d\n", pr_warn("ringbuf: failed to get map info for fd=%d: %d\n",
...@@ -359,7 +359,7 @@ static int user_ringbuf_map(struct user_ring_buffer *rb, int map_fd) ...@@ -359,7 +359,7 @@ static int user_ringbuf_map(struct user_ring_buffer *rb, int map_fd)
memset(&info, 0, sizeof(info)); memset(&info, 0, sizeof(info));
err = bpf_obj_get_info_by_fd(map_fd, &info, &len); err = bpf_map_get_info_by_fd(map_fd, &info, &len);
if (err) { if (err) {
err = -errno; err = -errno;
pr_warn("user ringbuf: failed to get map info for fd=%d: %d\n", map_fd, err); pr_warn("user ringbuf: failed to get map info for fd=%d: %d\n", map_fd, err);
......
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