Messages in this thread | | | From | "Lino Sanfilippo" <> | Subject | Aw: Re: stmmac ethernet in kernel 4.9-rc6: coalescing related pauses. | Date | Fri, 2 Dec 2016 15:05:21 +0100 |
| |
Hi,
> > There's nothing that protect stmmac_poll() from running concurently > with stmmac_dma_interrupt(), right? >
could it be that there is also another issue concerned locking?: The tx completion handler takes the xmit_lock in case that the netif_queue is stopped. This is AFAICS unnecessary, since both xmit and completion handler are already synchronized by the private tx lock. But it is IMHO also dangerous:
In the xmit handler we have the locking order 1. xmit_lock 2. private tx lock
while in the completion handler its the reverse:
1. private tx lock 2. xmit lock.
Do I miss something?
Regards, Lino
| |