This addresses an issue found while reviewing latest round of sock map patches and an issue reported from CI via Andrii. After this CI ./test_maps is stable for me. The CI discovered issue was introduced by over correcting our previously broken memory accounting. After the fix, "bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self" we fixed a dropped packet and a missing fwd_alloc calculations, but pushed it too far back into the packet pipeline creating an issue in the unlikely case socket tear down happens with an enqueued skb. See patch for details. Tested with usual suspects: test_sockmap, test_maps, test_progs and test_progs-no_alu32. v2: drop skb_orphan its not necessary and use sk directly instead of using psock->sk both suggested by Cong --- John Fastabend (2): bpf, sockmap: fix sk->prot unhash op reset bpf, sockmap: fix incorrect fwd_alloc accounting net/core/skmsg.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) --