[patch net] net: microchip: sparx5: Fix return value in sparx5_tc_setup_qdisc_ets()

Daniel.Machon at microchip.com Daniel.Machon at microchip.com
Fri Nov 18 01:34:02 PST 2022


Den Thu, Nov 17, 2022 at 11:07:22PM +0800 skrev Lu Wei:
> [Some people who received this message don't often get email from luwei32 at huawei.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
> 
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Function sparx5_tc_setup_qdisc_ets() always returns negative value
> because it return -EOPNOTSUPP in the end. This patch returns the
> rersult of sparx5_tc_ets_add() and sparx5_tc_ets_del() directly.
> 
> Fixes: 211225428d65 ("net: microchip: sparx5: add support for offloading ets qdisc")
> Signed-off-by: Lu Wei <luwei32 at huawei.com>
> ---
>  drivers/net/ethernet/microchip/sparx5/sparx5_tc.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/net/ethernet/microchip/sparx5/sparx5_tc.c b/drivers/net/ethernet/microchip/sparx5/sparx5_tc.c
> index e05429c751ee..dc2c3756e3a2 100644
> --- a/drivers/net/ethernet/microchip/sparx5/sparx5_tc.c
> +++ b/drivers/net/ethernet/microchip/sparx5/sparx5_tc.c
> @@ -90,13 +90,10 @@ static int sparx5_tc_setup_qdisc_ets(struct net_device *ndev,
>                         }
>                 }
> 
> -               sparx5_tc_ets_add(port, params);
> -               break;
> +               return sparx5_tc_ets_add(port, params);
>         case TC_ETS_DESTROY:
> 
> -               sparx5_tc_ets_del(port);
> -
> -               break;
> +               return sparx5_tc_ets_del(port);
>         case TC_ETS_GRAFT:
>                 return -EOPNOTSUPP;
> 
> --
> 2.31.1
>

Looks like ets_offload_change() does not check the return value of
ndo_setup_tc() here [1] - I wonder why this is. This also explains why
my ETS tests were passing.

Anyway, thank you for the patch.

Reviewed-by: Daniel Machon <daniel.machon at microchip.com>

==================

[1] https://elixir.bootlin.com/linux/v6.1-rc5/source/net/sched/sch_ets.c#L143



More information about the linux-arm-kernel mailing list