On Fri, 7 Jun 2019 20:42:55 +0000, Patel, Vedang wrote: > > Thanks for the changes, since you now validate no unknown flags are > > passed, perhaps there is no need to check if flags are == ~0? > > > > IS_ENABLED() could just do: (flags) & TCA_TAPRIO_ATTR_FLAG_TXTIME_ASSIST > > No? > > > This is specifically done so that user does not have to specify the > offload flags when trying to install the another schedule which will > be switched to at a later point of time (i.e. the admin schedule > introduced in Vinicius’ last series). Setting taprio_flags to ~0 > will help us distinguish between the flags parameter not specified > and flags set to 0.
I'm not super clear on this, because of backward compat you have to treat attr not present as unset. Let's see: new qdisc: - flags attr = 0 -> txtime not used - flags attr = 1 -> txtime used -> no flags attr -> txtime not used change qdisc: - flags attr = old flags attr -> leave unchanged - flags attr != old flags attr -> error - no flags attr -> leave txtime unchanged Doesn't that cover the cases? Were you planning to have no flag attr on change mean disabled rather than no change?