> >
> > Fixes: 715d449a965b ("net/ice: enhance Tx scheduler hierarchy support")
>
> I think this fix will cause other issues when we want to use large numbers
> of queues. From the commit log for 715d449a965b:
>
> "If the HW/firmware allows it, allow creating up to 2k child
> nodes per scheduler node. Also expand the number of supported layers to
> the max available, rather than always just having 3 layers. One
> restriction on this change is that the topology needs to be configured
> and enabled before port queue setup"
>
> The last part is significant - the number of configured queues must be
> supported by a scheduler hierarchy with enough nodes at the next,
> queue-group level. Therefore, before configuring large numbers of queues we
> need to configure a non-default hierarchy. Therefore, when running this
> check the value of nb_txq is not known, which is why the original patch
> changed the check to RTE_MAX_QUEUES_PER_PORT.
>
> However, you correctly point out in this fix, that that is not according to
> the spec for rte_tm. Therefore, I suggest changing the check, if possible:
>
> * if nb_txq == 0 (i.e. no queues configured yet), then keep as-is with
> MAX_QUEUES
> * for cases where nb_txq != 0, then use nb_txq.
>
> Does that seem sensible, or any better alternatives you can see?
That makes sense Bruce, I cannot think of a better alternative.
I'll submit a v2 with your suggestion in place.
Thanks,
Ciara
>
> /Bruce
>
>