From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id BBB8FA09E4 for ; Fri, 29 Jan 2021 17:30:07 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 85FAD4067B; Fri, 29 Jan 2021 17:30:07 +0100 (CET) Received: from smail.rz.tu-ilmenau.de (smail.rz.tu-ilmenau.de [141.24.186.67]) by mails.dpdk.org (Postfix) with ESMTP id 4D67E40395 for ; Fri, 29 Jan 2021 17:30:05 +0100 (CET) Received: from [192.168.0.10] (unknown [80.88.20.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smail.rz.tu-ilmenau.de (Postfix) with ESMTPSA id 0B0F958008E; Fri, 29 Jan 2021 17:30:05 +0100 (CET) To: users@dpdk.org From: Carsten Andrich Message-ID: <43ddc3a8-a48f-0930-a2da-9e2fcdde1b98@tu-ilmenau.de> Date: Fri, 29 Jan 2021 17:30:04 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Subject: [dpdk-users] MLX5: Using packet send scheduling / packet pacing X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: users-bounces@dpdk.org Sender: "users" 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