mirror-linux/include
Kumar Kartikeya Dwivedi 9db44fdd81 bpf: Support kptrs in local storage maps
Enable support for kptrs in local storage maps by wiring up the freeing
of these kptrs from map value. Freeing of bpf_local_storage_map is only
delayed in case there are special fields, therefore bpf_selem_free_*
path can also only dereference smap safely in that case. This is
recorded using a bool utilizing a hole in bpF_local_storage_elem. It
could have been tagged in the pointer value smap using the lowest bit
(since alignment > 1), but since there was already a hole I went with
the simpler option. Only the map structure freeing is delayed using RCU
barriers, as the buckets aren't used when selem is being freed, so they
can be freed once all readers of the bucket lists can no longer access
it.

Cc: Martin KaFai Lau <martin.lau@kernel.org>
Cc: KP Singh <kpsingh@kernel.org>
Cc: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Link: https://lore.kernel.org/r/20230225154010.391965-3-memxor@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2023-03-01 10:24:33 -08:00
..
acpi ACPI updates for 6.3-rc1 2023-02-21 12:23:24 -08:00
asm-generic hyperv-next for v6.3. 2023-02-21 16:59:23 -08:00
clocksource
crypto
drm
dt-bindings Thermal control updates for 6.3-rc1 2023-02-21 12:32:05 -08:00
keys
kunit
kvm
linux bpf: Support kptrs in local storage maps 2023-03-01 10:24:33 -08:00
math-emu
media platform-drivers-x86 for v6.3-1 2023-02-21 17:32:50 -08:00
memory
misc
net page_pool: add a comment explaining the fragment counter usage 2023-02-21 09:15:39 -08:00
pcmcia
ras
rdma
rv
scsi
soc
sound
target
trace Networking changes for 6.3. 2023-02-21 18:24:12 -08:00
uapi bpf: Add bpf_dynptr_slice and bpf_dynptr_slice_rdwr 2023-03-01 09:55:24 -08:00
ufs
vdso
video
xen