]> git.baikalelectronics.ru Git - kernel.git/commit
ibmvnic: Fix overflowing firmware/hardware TX queue
authorThomas Falcon <tlfalcon@linux.vnet.ibm.com>
Sun, 5 Mar 2017 18:18:41 +0000 (12:18 -0600)
committerDavid S. Miller <davem@davemloft.net>
Tue, 7 Mar 2017 22:14:30 +0000 (14:14 -0800)
commit4c918e18fb117015793b254a62670711365b2a80
tree656a3545ab1f3070a77f5bf7fbca80bd400871d9
parente9189d8645c309ae8b64208fef475dff208f25c9
ibmvnic: Fix overflowing firmware/hardware TX queue

Use a counter to track the number of outstanding transmissions sent
that have not received completions. If the counter reaches the maximum
number of queue entries, stop transmissions on that queue. As we receive
more completions from firmware, wake the queue once the counter reaches
an acceptable level.

This patch prevents hardware/firmware TX queue from filling up and
and generating errors.  Since incorporating this fix, internal testing
has reported that these firmware errors have stopped.

Signed-off-by: Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/ibm/ibmvnic.c
drivers/net/ethernet/ibm/ibmvnic.h