Page MenuHomeFreeBSD

IB/mlx5: Expose multi-packet RQ capabilities
Needs ReviewPublic

Authored by vag.singh_oneconvergence.com on Sep 28 2021, 2:01 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 20 2023, 6:39 AM
Unknown Object (File)
Oct 30 2023, 10:47 PM
Unknown Object (File)
Jun 12 2023, 2:03 PM
Unknown Object (File)
May 20 2023, 1:08 AM
Unknown Object (File)
May 4 2023, 11:19 PM
Unknown Object (File)
Mar 23 2023, 5:43 AM
Unknown Object (File)
Mar 17 2023, 7:09 AM
Unknown Object (File)
Feb 21 2023, 7:02 PM

Details

Reviewers
kib
hselasky
Summary

[PATCH 21/31] FreeBSD OFED support for DPDK MLX5 PMD

a) This patch reports the device's striding RQ capabilities to
the user-space:

  • min/max_single_stride_log_num_of_bytes: Log of min/max number of bytes in a single stride.
  • min/max_single_wqe_log_num_of_strides: Log of min/max number of strides in a single WQE.
  • supported_qpts: A bit mask to know which QP types support multi- packet RQ, for now only Raw Packet QPs.

b) Allow creation of a multi-packet receive queue.
In order to create a multi-packet RQ, the following fields in
the mlx5_ib_rwq should be set:

  • log_num_strides: Log of number of strides per WQE
  • single_stride_log_num_of_bytes: Log of a single stride size
  • two_byte_shift_en: When enabled, hardware pads 2 bytes of zeros before writing the message to memory (e.g. for the IP alignment).
Test Plan

Tested on KVM, ESXi, and HyperV/Azure Hypervisors with FreeBSD 14.0-CURRENT and FreeBSD12.1-STABLE.

iperf
DPDK MLX5 PMD/testpmd

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped