On Mon, 18 Jan 2021 16:40:22 -0800 Vinicius Costa Gomes wrote:
> Adds a way to configure which traffic classes are marked as
> preemptible and which are marked as express.
>
> Even if frame preemption is not a "real" offload, because it can't be
> executed purely in software, having this information near where the
> mapping of traffic classes to queues is specified, makes it,
> hopefully, easier to use.
>
> taprio will receive the information of which traffic classes are
> marked as express/preemptible, and when offloading frame preemption to
> the driver will convert the information, so the driver receives which
> queues are marked as express/preemptible.
>
> Signed-off-by: Vinicius Costa Gomes <[email protected]>
> @@ -1286,13 +1289,15 @@ static int taprio_disable_offload(struct net_device
> *dev,
> offload->enable = 0;
>
> err = ops->ndo_setup_tc(dev, TC_SETUP_QDISC_TAPRIO, offload);
> - if (err < 0) {
> + if (err < 0)
> + NL_SET_ERR_MSG(extack,
> + "Device failed to disable offload");
> +
> + err = ops->ndo_setup_tc(dev, TC_SETUP_PREEMPT, &preempt);
> + if (err < 0)
> NL_SET_ERR_MSG(extack,
> "Device failed to disable offload");
This was meant to say something else?
> - goto out;
> - }
>
> -out:
> taprio_offload_free(offload);
>
> return err;