On 2/7/26 23:00, Kuniyuki Iwashima wrote: > On Sat, Feb 7, 2026 at 6:35 AM Michal Luczaj <[email protected]> wrote: >> This patch also happens to fix a deadlock that may occur when >> bpf_iter_unix_seq_show()'s lock_sock_fast() takes the fast path and the >> iter prog attempts to update a sockmap. Which ends up spinning at >> sock_map_update_elem()'s bh_lock_sock(): > > Hmm.. this seems to be a more general problem for > bpf iter vs sockmap. bpf_iter_{tcp,udp}_seq_show() also > hold lock_sock(), where this patch's solution does not help. > We need to resolve this regardless of socket family.
I don't see any deadlocks there. Note that I've mentioned lock_sock_fast() fast path was a problem, not lock_sock(). > Also, I feel lock_sock() should be outside of unix_state_lock() > since the former is usually sleepable. If we used such locking > order in the future, it would trigger ABBA deadlock and we would > have to revisit this problem. Do I understand correctly you're suggesting taking lock_sock() for af_unix just as well?

