On Thu, 11 Jan 2018 23:50:27 +0000, Yuval Mintz wrote: > > > +struct tc_prio_qopt_offload_params { > > > + int bands; > > > + u8 priomap[TC_PRIO_MAX + 1]; > > > + /* In case that a prio qdisc is offloaded and now is changed to a > > > + * non-offloadedable config, it needs to update the backlog value > > > + * to negate the HW backlog value. > > > + */ > > > + u32 *backlog; > > > +}; > > > > Could we please pass the full qstats on replace and destroy. This > > simplifies the driver code and allows handling the qlen as well as > > backlog. Please see the 2 patch series I sent earlier yesterday. > > That might give the false impression that offloading driver is expected > to correct all the qstats fields during destruction, whereas for most of > them it doesn't seem appropriate.
The driver is supposed to return the momentary stats to their original/SW-only value. And the driver knows exactly which stats those are, just look at your patch 5, you handle backlog completely differently than other stats already.