net/mlx5: enable MPRQ multi-stride operations
authorAlexander Kozyrev <akozyrev@mellanox.com>
Thu, 9 Apr 2020 22:23:52 +0000 (22:23 +0000)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 21 Apr 2020 11:57:08 +0000 (13:57 +0200)
commitbd0d5930bf567b41c634b5a7ef0fe76c167ef3b6
treef8f7d21d1181de8e9f063deb12234645cb5fb6e5
parentecb160456aed51ccf69dc96cb835c259d611d276
net/mlx5: enable MPRQ multi-stride operations

MPRQ feature should be updated to allow a packet to be received
into multiple strides in order to support the MTU exceeding 8KB.
Special care is needed to prevent the headroom corruption in the
multi-stride mode since the headroom space is borrowed by the PMD
from the tail of the preceding stride. Copy the whole packet into
a separate mbuf in this case or just the overlapping data if the
Rx scattering is supported by an application.

Cc: stable@dpdk.org
Signed-off-by: Alexander Kozyrev <akozyrev@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
drivers/net/mlx5/mlx5_rxq.c
drivers/net/mlx5/mlx5_rxtx.c
drivers/net/mlx5/mlx5_rxtx.h