A tc, xdp or flow_dissector program updating or deleting a sockmap deadlocks on stab->lock vs sk_callback_lock and has no reason to. Patch 1 disallows it in may_update_sockmap(); patch 2 drops the selftests that exercised it.
v3: - drop the broken selftests (Jiayuan Chen) - drop the Fixes tag and target bpf-next (Jiayuan Chen) v2: - https://lore.kernel.org/all/[email protected]/ v1: - https://lore.kernel.org/all/[email protected]/ Sechang Lim (2): bpf, sockmap: disallow update and delete from tc, xdp and flow_dissector selftests/bpf: drop tc/xdp/flow_dissector sockmap mutation tests kernel/bpf/verifier.c | 4 -- .../selftests/bpf/prog_tests/fexit_bpf2bpf.c | 13 ----- .../selftests/bpf/prog_tests/sockmap_basic.c | 52 ------------------- .../bpf/progs/freplace_cls_redirect.c | 34 ------------ .../selftests/bpf/progs/test_sockmap_update.c | 48 ----------------- .../bpf/progs/verifier_sockmap_mutate.c | 10 ++-- 6 files changed, 5 insertions(+), 156 deletions(-) delete mode 100644 tools/testing/selftests/bpf/progs/freplace_cls_redirect.c delete mode 100644 tools/testing/selftests/bpf/progs/test_sockmap_update.c -- 2.43.0

