net/mlx5e: Add fragmented memory support for RX multi packet WQE
If the allocation of a linear (physically continuous) MPWQE fails, we allocate a fragmented MPWQE. This is implemented via device's UMR (User Memory Registration) which allows to register multiple memory fragments into ConnectX hardware as a continuous buffer. UMR registration is an asynchronous operation and is done via ICO SQs. Signed-off-by:Tariq Toukan <tariqt@mellanox.com> Signed-off-by:
Saeed Mahameed <saeedm@mellanox.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/net/ethernet/mellanox/mlx5/core/en.h 73 additions, 11 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en.h
- drivers/net/ethernet/mellanox/mlx5/core/en_main.c 60 additions, 4 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en_main.c
- drivers/net/ethernet/mellanox/mlx5/core/en_rx.c 376 additions, 51 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en_rx.c
- drivers/net/ethernet/mellanox/mlx5/core/en_tx.c 2 additions, 2 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en_tx.c
- drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c 3 additions, 0 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en_txrx.c
Please register or sign in to comment