[PATCH net-next] net: stmmac: add tc-ets qdisc offload
Lorenzo Bianconi
lorenzo.bianconi at oss.qualcomm.com
Wed Aug 5 13:20:53 PDT 2026
> On Tue, Aug 04, 2026 at 08:17:35PM +0200, Lorenzo Bianconi wrote:
>
> [...]
>
> > When all bands are strict priority, the MTL scheduler is programmed with
> > SP scheduling; otherwise the requested weights are applied to the TX
> > queues and the scheduler is switched to DWRR. The TC_ETS_STATS command
> > is accepted and handled.
> >
> > Export stmmac_set_tx_queue_weight() so the ETS path can reprogram queue
> > weights, and wire TC_SETUP_QDISC_ETS into stmmac_setup_tc().
> >
> > Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi at oss.qualcomm.com>
>
> hello Lorenzo, thanks for your patch!
Hi Davide,
>
> > ---
> > +static int tc_setup_ets_sched(struct stmmac_priv *priv,
> > + struct tc_ets_qopt_offload *qopt)
> > +{
> > + struct tc_ets_qopt_offload_replace_params *p = &qopt->replace_params;
> > + struct plat_stmmacenet_data *pdata = priv->plat;
> > + int i, nstrict = 0;
> > +
> > + if (p->bands > priv->plat->tx_queues_to_use)
> > + return -EOPNOTSUPP;
> > +
> > + for (i = 0; i < p->bands; i++) {
> > + if (!p->quanta[i])
> > + nstrict++;
> > + }
> > +
> > + if (p->bands && nstrict)
> > + return -EOPNOTSUPP;
> > +
> > + if (nstrict) {
> > + tc_setup_sp_sched(priv);
>
> From what I understood, this will fail configuring the strict priority case (the only one
> possible according to the commit message, where all bands have quanta equal to 0). Maybe
> the if() statement should be done like:
>
> if (nstrict && nstrict != p->bands)
> return -EOPNOTSUPP;
>
> WDYT? thank you in advance!
ack, I agree. I will fix it in v2.
Regards,
Lorenzo
>
> --
> davide
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20260805/206f7bd0/attachment.sig>
More information about the linux-arm-kernel
mailing list