bpf: btf: Rename btf_key_id and btf_value_id in bpf_map_info
In "struct bpf_map_info", the name "btf_id", "btf_key_id" and "btf_value_id" could cause confusion because the "id" of "btf_id" means the BPF obj id given to the BTF object while "btf_key_id" and "btf_value_id" means the BTF type id within that BTF object. To make it clear, btf_key_id and btf_value_id are renamed to btf_key_type_id and btf_value_type_id. Suggested-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: Martin KaFai Lau <kafai@fb.com> Acked-by: Yonghong Song <yhs@fb.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
This commit is contained in:
parent
aea2f7b891
commit
9b2cf328b2
@ -69,8 +69,8 @@ struct bpf_map {
|
|||||||
u32 pages;
|
u32 pages;
|
||||||
u32 id;
|
u32 id;
|
||||||
int numa_node;
|
int numa_node;
|
||||||
u32 btf_key_id;
|
u32 btf_key_type_id;
|
||||||
u32 btf_value_id;
|
u32 btf_value_type_id;
|
||||||
struct btf *btf;
|
struct btf *btf;
|
||||||
bool unpriv_array;
|
bool unpriv_array;
|
||||||
/* 55 bytes hole */
|
/* 55 bytes hole */
|
||||||
|
@ -284,8 +284,8 @@ union bpf_attr {
|
|||||||
char map_name[BPF_OBJ_NAME_LEN];
|
char map_name[BPF_OBJ_NAME_LEN];
|
||||||
__u32 map_ifindex; /* ifindex of netdev to create on */
|
__u32 map_ifindex; /* ifindex of netdev to create on */
|
||||||
__u32 btf_fd; /* fd pointing to a BTF type data */
|
__u32 btf_fd; /* fd pointing to a BTF type data */
|
||||||
__u32 btf_key_id; /* BTF type_id of the key */
|
__u32 btf_key_type_id; /* BTF type_id of the key */
|
||||||
__u32 btf_value_id; /* BTF type_id of the value */
|
__u32 btf_value_type_id; /* BTF type_id of the value */
|
||||||
};
|
};
|
||||||
|
|
||||||
struct { /* anonymous struct used by BPF_MAP_*_ELEM commands */
|
struct { /* anonymous struct used by BPF_MAP_*_ELEM commands */
|
||||||
@ -2219,8 +2219,8 @@ struct bpf_map_info {
|
|||||||
__u64 netns_dev;
|
__u64 netns_dev;
|
||||||
__u64 netns_ino;
|
__u64 netns_ino;
|
||||||
__u32 btf_id;
|
__u32 btf_id;
|
||||||
__u32 btf_key_id;
|
__u32 btf_key_type_id;
|
||||||
__u32 btf_value_id;
|
__u32 btf_value_type_id;
|
||||||
} __attribute__((aligned(8)));
|
} __attribute__((aligned(8)));
|
||||||
|
|
||||||
struct bpf_btf_info {
|
struct bpf_btf_info {
|
||||||
|
@ -352,7 +352,7 @@ static void array_map_seq_show_elem(struct bpf_map *map, void *key,
|
|||||||
}
|
}
|
||||||
|
|
||||||
seq_printf(m, "%u: ", *(u32 *)key);
|
seq_printf(m, "%u: ", *(u32 *)key);
|
||||||
btf_type_seq_show(map->btf, map->btf_value_id, value, m);
|
btf_type_seq_show(map->btf, map->btf_value_type_id, value, m);
|
||||||
seq_puts(m, "\n");
|
seq_puts(m, "\n");
|
||||||
|
|
||||||
rcu_read_unlock();
|
rcu_read_unlock();
|
||||||
|
@ -422,7 +422,7 @@ static int bpf_obj_name_cpy(char *dst, const char *src)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define BPF_MAP_CREATE_LAST_FIELD btf_value_id
|
#define BPF_MAP_CREATE_LAST_FIELD btf_value_type_id
|
||||||
/* called via syscall */
|
/* called via syscall */
|
||||||
static int map_create(union bpf_attr *attr)
|
static int map_create(union bpf_attr *attr)
|
||||||
{
|
{
|
||||||
@ -457,10 +457,10 @@ static int map_create(union bpf_attr *attr)
|
|||||||
atomic_set(&map->usercnt, 1);
|
atomic_set(&map->usercnt, 1);
|
||||||
|
|
||||||
if (bpf_map_support_seq_show(map) &&
|
if (bpf_map_support_seq_show(map) &&
|
||||||
(attr->btf_key_id || attr->btf_value_id)) {
|
(attr->btf_key_type_id || attr->btf_value_type_id)) {
|
||||||
struct btf *btf;
|
struct btf *btf;
|
||||||
|
|
||||||
if (!attr->btf_key_id || !attr->btf_value_id) {
|
if (!attr->btf_key_type_id || !attr->btf_value_type_id) {
|
||||||
err = -EINVAL;
|
err = -EINVAL;
|
||||||
goto free_map_nouncharge;
|
goto free_map_nouncharge;
|
||||||
}
|
}
|
||||||
@ -471,16 +471,16 @@ static int map_create(union bpf_attr *attr)
|
|||||||
goto free_map_nouncharge;
|
goto free_map_nouncharge;
|
||||||
}
|
}
|
||||||
|
|
||||||
err = map->ops->map_check_btf(map, btf, attr->btf_key_id,
|
err = map->ops->map_check_btf(map, btf, attr->btf_key_type_id,
|
||||||
attr->btf_value_id);
|
attr->btf_value_type_id);
|
||||||
if (err) {
|
if (err) {
|
||||||
btf_put(btf);
|
btf_put(btf);
|
||||||
goto free_map_nouncharge;
|
goto free_map_nouncharge;
|
||||||
}
|
}
|
||||||
|
|
||||||
map->btf = btf;
|
map->btf = btf;
|
||||||
map->btf_key_id = attr->btf_key_id;
|
map->btf_key_type_id = attr->btf_key_type_id;
|
||||||
map->btf_value_id = attr->btf_value_id;
|
map->btf_value_type_id = attr->btf_value_type_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
err = security_bpf_map_alloc(map);
|
err = security_bpf_map_alloc(map);
|
||||||
@ -2013,8 +2013,8 @@ static int bpf_map_get_info_by_fd(struct bpf_map *map,
|
|||||||
|
|
||||||
if (map->btf) {
|
if (map->btf) {
|
||||||
info.btf_id = btf_id(map->btf);
|
info.btf_id = btf_id(map->btf);
|
||||||
info.btf_key_id = map->btf_key_id;
|
info.btf_key_type_id = map->btf_key_type_id;
|
||||||
info.btf_value_id = map->btf_value_id;
|
info.btf_value_type_id = map->btf_value_type_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bpf_map_is_dev_bound(map)) {
|
if (bpf_map_is_dev_bound(map)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user