On Thu, Mar 26, 2015 at 11:01:14AM +0000, Dey, Souvik wrote: > Do you see any benefit of calling netif_rx_ni() and not directly netif_rx() ? > Yes, I see using the ni variant as not being a bug. kni_net_rx is run from process context (it runs as a thread created by kthread_create). netif_rx assumes execution occurs in interrupt context, so deadlocks like those below can still occur if you don't disable pre-emption and irqs on the local cpu. netif_rx_ni (the No Interrupt) variant, does that for you.
Neil