NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: kern/58531: NetBSD 10.0 deadlock in nd_timer



>  We have a deadlock here:
>  
>  wm_handle_queue/wm_send_common_locked/bpf_deliver/selnotify/knote/filter_event waits for kernel_lock with txq->txq_lock held
>  
>  softint_dispatch/callout_softclock/nd_timer/arp_llinfo_output/arprequest/ether_output/if_transmit/wm_start waits for txq->txq_lock  with kernel_lock held

usually we'd want kernel lock taken before other locks so in
thie case, the first one would already have kernel lock and
would just take a ref on the existing lock

for the first case, see if you can ensure that kernel_lock is
held before taking txq_lock, perhaps only for the case that
calls the knote.

apparently we need to de-kernel-lock-ify select backends?


.mrg.


Home | Main Index | Thread Index | Old Index