Subject: Re: [PATCH net-next] net: airoha: Report extack error to the user if airoha_tc_htb_modify_queue() fails

From: Alexander Lobakin <[email-masked]>
Date: Wed, 3 Jun 2026 16:05:58 +0200

From: Lorenzo Bianconi <[email-masked]>
Date: Wed, 03 Jun 2026 12:30:01 +0200

> Report an extack error message in airoha_tc_htb_modify_queue routine if
> airoha_qdma_set_tx_rate_limit() fails.
> 
> Signed-off-by: Lorenzo Bianconi <[email-masked]>

Reviewed-by: Alexander Lobakin <[email-masked]>

> ---
>  drivers/net/ethernet/airoha/airoha_eth.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/airoha/airoha_eth.c b/drivers/net/ethernet/airoha/airoha_eth.c
> index 6574901ebd19..d0d13f01e50f 100644
> --- a/drivers/net/ethernet/airoha/airoha_eth.c
> +++ b/drivers/net/ethernet/airoha/airoha_eth.c
> @@ -2605,13 +2605,19 @@ static int airoha_tc_htb_modify_queue(struct net_device *dev,
>  {
>  	u32 channel = TC_H_MIN(opt->classid) % AIROHA_NUM_QOS_CHANNELS;
>  	u32 rate = div_u64(opt->rate, 1000) << 3; /* kbps */
> +	int err;
>  
>  	if (opt->parent_classid != TC_HTB_CLASSID_ROOT) {
>  		NL_SET_ERR_MSG_MOD(opt->extack, "invalid parent classid");
>  		return -EINVAL;
>  	}
>  
> -	return airoha_qdma_set_tx_rate_limit(dev, channel, rate, opt->quantum);
> +	err = airoha_qdma_set_tx_rate_limit(dev, channel, rate, opt->quantum);
> +	if (err)
> +		NL_SET_ERR_MSG_MOD(opt->extack,
> +				   "failed configuring htb offload");
> +
> +	return err;
>  }
>  
>  static int airoha_tc_htb_alloc_leaf_queue(struct net_device *netdev,
Thanks,
Olek