enic: fix Tx hang when number of packets > queue size
authorJohn Daley <johndale@cisco.com>
Sat, 26 Mar 2016 00:43:27 +0000 (17:43 -0700)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Wed, 30 Mar 2016 17:39:07 +0000 (19:39 +0200)
commitd944410a44fc216cb4fe45d14daf8309abf27ec8
treed2d882cdcf8f5bf3f258bcfbe6ef63881a6cd970
parentb990c617dfd3349b004aabfcad5411639ea3f403
enic: fix Tx hang when number of packets > queue size

If the nb_pkts parameter to rte_eth_tx_burst() was greater than
the TX descriptor count, a completion was not being requested
from the NIC, so descriptors would not be released back to the
host causing a lock-up.

Introduce a limit of how many TX descriptors can be used in a single
call to the enic PMD burst TX function before requesting a completion.

Fixes: d739ba4c6abf ("enic: improve Tx packet rate")

Signed-off-by: John Daley <johndale@cisco.com>
drivers/net/enic/enic_ethdev.c
drivers/net/enic/enic_res.h