[PATCH v2] net/ice: add per-queue Tx rate limit support
Bruce Richardson
bruce.richardson at intel.com
Fri Sep 18 12:14:06 CEST 2026
On Thu, Sep 17, 2026 at 06:38:23AM +0000, Anurag Mandal wrote:
> The Tx rate can be limited per queue with
> ethdev operation ``rte_eth_set_queue_rate_limit()``
> and can be read through ``rte_eth_get_queue_rate_limit()``.
>
> This feature uses the hardware packet pacing
> mechanism to enforce a data rate on individual
> Tx queues without tearing down the queue or
> bouncing the port.
>
> The rate is specified in Mbps.
>
> ice_set_queue_rate_limit() applies the requested rate
> as the EIR (maximum bandwidth) limit of the queue
> scheduler node using ice_cfg_q_bw_lmt(),
> converting the Mbps value taken by the API to the Kbps
> expected by the scheduler.
> A rate of 0 removes the limit and restores the default
> bandwidth via ice_cfg_q_bw_dflt_lmt().
>
> ice_get_queue_rate_limit() reads back the value cached
> in the queue context by the scheduler on a successful
> set, and reports 0 when the queue runs unlimited.
>
> This interface and the Traffic Management API are
> mutually exclusive.
>
> Signed-off-by: Anurag Mandal <anurag.mandal at intel.com>
> ---
> V2: Addressed Bruce Richardson's feedback
> - The per-queue Tx rate limit and Traffic Management APIs are mutually exclusive.
>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
Patch applied to dpdk-next-net-intel.
Thanks,
/Bruce
More information about the dev
mailing list