Re: [PATCH RFC] netpoll: don't spin forever sending to stopped queues
From: Jeremy Fitzhardinge
Date: Mon Jun 12 2006 - 16:57:02 EST
Matt Mackall wrote:
On Thu, Jun 08, 2006 at 07:15:50PM -0700, Jeremy Fitzhardinge wrote:
Here's a patch. I haven't tested it beyond compiling it, and I don't
know if it is actually correct. In this case, it seems pointless to
spin waiting for an even which will never happen. Should
netif_poll_disable() cause netpoll_send_skb() (or something) to not even
bother trying to send? netif_poll_disable seems mysteriously simple to me.
J
Did this work for you at all?
No, it didn't appear to help; I get the same symptom. I think fix is
correct (in that its better than what was there before), but there's
probably more going on in my case. I haven't looked into it more deeply
yet. I suspect there's another netpoll code path which is spinning
forever on an XOFFed queue.
When transmitting a skb in netpoll_send_skb(), only retry a limited
number of times if the device queue is stopped.
Where limited = once?
No, it reuses the existing retry logic. It retries 20000 times with a
50us pause between attempts, so up to a second. This seems excessive to
me; I don't know where those original numbers came from. I tried 5000
retries, but it didn't make any difference to my case.
J
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/