Files
linux/kernel
Kumar Kartikeya Dwivedi 5ce937d613 bpf: Populate pairs of btf_id and destructor kfunc in btf
To support storing referenced PTR_TO_BTF_ID in maps, we require
associating a specific BTF ID with a 'destructor' kfunc. This is because
we need to release a live referenced pointer at a certain offset in map
value from the map destruction path, otherwise we end up leaking
resources.

Hence, introduce support for passing an array of btf_id, kfunc_btf_id
pairs that denote a BTF ID and its associated release function. Then,
add an accessor 'btf_find_dtor_kfunc' which can be used to look up the
destructor kfunc of a certain BTF ID. If found, we can use it to free
the object from the map free path.

The registration of these pairs also serve as a whitelist of structures
which are allowed as referenced PTR_TO_BTF_ID in a BPF map, because
without finding the destructor kfunc, we will bail and return an error.

Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20220424214901.2743946-7-memxor@gmail.com
2022-04-25 20:26:44 -07:00
..
2021-12-02 17:25:21 +09:00
2021-08-11 13:11:12 -07:00
2021-09-08 15:32:35 -07:00
2022-03-15 10:32:44 +01:00
2021-06-18 11:43:08 +02:00
2021-09-08 15:32:34 -07:00
2022-02-28 10:26:40 -05:00
2021-10-14 13:29:18 +02:00
2022-01-08 12:43:57 -06:00
2022-02-25 09:36:06 +01:00
2022-03-08 14:33:36 -06:00