+Cc Slava
29/01/2021 17:30, Carsten Andrich:
> Hello everyone,
>
> I'm trying to use packet send scheduling [1] with DPDK 20.11 and the
> MLX5 PMD (NIC: ConnectX-5 MCX516A-CDAT). This patch contains some
> additional information on this feature also know as packet pacing [2].
>
> According to MLX5's docs, packet pacing requires the "tx_pp" parameter
> [3, CTRL+F: "tx_pp"]. However, when firing up testpmd with that
> parameter, it fails as follows:
>
> > # dpdk-testpmd -a 81:00.0,tx_pp=500 -- -i
> > ...
> > EAL: Probe PCI driver: mlx5_pci (15b3:1019) device: 0000:81:00.0 (socket 0)
> > mlx5_pci: WQE rate mode is required for packet pacing
> > mlx5_pci: probe of PCI device 0000:81:00.0 aborted after encountering an
> > error: No such device
> > common_mlx5: Failed to load driver = mlx5_pci.
> >
> > EAL: Requested device 0000:81:00.0 cannot be used
> The error message originates here [4] and is caused by what to me
> appears to be a value read from the NIC [5]. Unfortunately, that leaves
> me clueless on how to activate the required "WQE rate mode". According
> to the output of ibv_devinfo, my NIC does support packet pacing:
>
> > # ibv_devinfo -v 81:00.0
> > ...
> > packet_pacing_caps:
> > qp_rate_limit_min: 1kbps
> > qp_rate_limit_max: 100000000kbps
> > supported_qp:
> > SUPPORT_RAW_PACKET
> I'd be grateful for any information on how to get packet pacing up and
> running. Am I just missing another required option (which is not given
> in the docs) or does my NIC lack packet pacing support?
>
> Thank you very much in advance.
>
> Best regards,
> Carsten
>
> [1]
> https://doc.dpdk.org/api/rte__ethdev_8h.html#a990d8351447a710628cbb24a28d3252d
> [2] https://patches.dpdk.org/patch/73742/
> [3] https://doc.dpdk.org/guides/nics/mlx5.html#run-time-configuration
> [4]
> http://code.dpdk.org/dpdk/v20.11/source/drivers/net/mlx5/linux/mlx5_os.c#L1278
> [5]
> http://code.dpdk.org/dpdk/v20.11/source/drivers/common/mlx5/mlx5_devx_cmds.c#L748
>
>