> > > > +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.
*we* surely understand that now. I'm just mentioning it might confuse future offloaders; No strong objection here. And I agree the alternative [passing pointers to each momentary stat] is quite ugly.