net/ixgbe: allow bulk alloc for the max size desc ring
authorIlya Maximets <i.maximets@samsung.com>
Wed, 19 Oct 2016 14:07:17 +0000 (17:07 +0300)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 17 Jan 2017 18:41:42 +0000 (19:41 +0100)
commit2652a9fb21e542202b0697c9e49e16ed6fb336de
tree8c4d1b508ea696b43085b8cd5880a5c84471fe1c
parent3d053e3538995fb03fd497bb5f2afa3f3210f42e
net/ixgbe: allow bulk alloc for the max size desc ring

The only reason why bulk alloc disabled for the rings with
more than (IXGBE_MAX_RING_DESC - RTE_PMD_IXGBE_RX_MAX_BURST)
descriptors is the possible out-of-bound access to the dma
memory. But it's the artificial limit and can be easily
avoided by allocating of RTE_PMD_IXGBE_RX_MAX_BURST more
descriptors in memory. This will not interfere the HW and,
as soon as all rings' memory zeroized, Rx functions will
work correctly.

This change allows to use vectorized Rx functions with
4096 descriptors in Rx ring which is important to achieve
zero packet drop rate in high-load installations.

Signed-off-by: Ilya Maximets <i.maximets@samsung.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
drivers/net/ixgbe/ixgbe_rxtx.c
drivers/net/ixgbe/ixgbe_rxtx.h