On Tue, 28 May 2019 10:46:44 -0700, Vedang Patel wrote:
> From: Vinicius Costa Gomes <vinicius.go...@intel.com>
> 
> This adds the UAPI and the core bits necessary for userspace to
> request hardware offloading to be enabled.
> 
> The future commits will enable hybrid or full offloading for taprio. This
> commit sets up the infrastructure to enable it via the netlink interface.
> 
> Signed-off-by: Vinicius Costa Gomes <vinicius.go...@intel.com>
> Signed-off-by: Vedang Patel <vedang.pa...@intel.com>

Other qdiscs offload by default, this offload-level selection here is a
little bit inconsistent with that :(

> @@ -731,6 +857,9 @@ static int taprio_change(struct Qdisc *sch, struct nlattr 
> *opt,
>       if (err < 0)
>               return err;
>  
> +     if (tb[TCA_TAPRIO_ATTR_OFFLOAD_FLAGS])
> +             offload_flags = nla_get_u32(tb[TCA_TAPRIO_ATTR_OFFLOAD_FLAGS]);

You should make sure user doesn't set unknown bits.  Otherwise using
other bits will not be possible in the future.

>       new_admin = kzalloc(sizeof(*new_admin), GFP_KERNEL);
>       if (!new_admin) {
>               NL_SET_ERR_MSG(extack, "Not enough memory for a new schedule");

Reply via email to