This finds the issue with kcm and sockmap where when a kcm socket is added to a sockmap we fail to notice it is a kcm sock and not a tcp bpf ULP sock. This results in a refcount_inc_not_zero() being called on the psock which is assigned to a smap_psock incorrectly. On my system it just happens to fail there and returns EAGAIN.
With the fix, just submitted for bpf tree, we get the correct EBUSY error. https://patchwork.ozlabs.org/project/netdev/list/?series=63393 RFC for now and will submit properly when bpf fix makes its way into bpf-next. But, wanted to get the test on the list for folks to look at. --- John Fastabend (1): bpf: test_maps add a test to catch kcm + sockmap tools/testing/selftests/bpf/Makefile | 2 - tools/testing/selftests/bpf/test_maps.c | 64 ++++++++++++++++++++++++++++++- 2 files changed, 63 insertions(+), 3 deletions(-) -- Signature