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 Updates for timers, timekeeping and drivers: 2022-12-12 12:52:02 -08:00
crypto crypto: api - Use data directly in completion function 2023-02-13 18:35:14 +08:00
drm drm/client: fix circular reference counting issue 2023-02-07 09:42:56 +01:00
dt-bindings Thermal control updates for 6.3-rc1 2023-02-21 12:32:05 -08:00
keys
kunit kunit: fix kunit_test_init_section_suites(...) 2023-01-31 09:10:38 -07:00
kvm KVM: arm64: Add helper vgic_write_guest_lock() 2023-01-29 18:46:11 +00:00
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 memory: renesas-rpc-if: Add support for R-Car Gen4 2022-10-18 13:02:58 -04:00
misc cxl: fix typo in comment 2022-11-24 23:12:19 +11:00
net page_pool: add a comment explaining the fragment counter usage 2023-02-21 09:15:39 -08:00
pcmcia
ras mm, hwpoison: enable memory error handling on 1GB hugepage 2022-08-08 18:06:44 -07:00
rdma
rv
scsi
soc net: mscc: ocelot: un-export unused regmap symbols 2023-02-06 22:33:15 -08:00
sound
target scsi: target: core: Send max transfer length in blocks 2022-11-24 02:16:19 +00:00
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 vdso/bits.h: Add BIT_ULL() for the sake of consistency 2023-01-31 14:42:10 +01:00
video fbdev: remove w100fb driver 2023-02-01 17:23:38 +01:00
xen xen: Allow platform PCI interrupt to be shared 2023-02-13 06:53:20 +01:00