Jiri Pirko <jiri@xxxxxxxxxxx> wrote: > Mon, Apr 20, 2020 at 02:39:15PM CEST, pablo@xxxxxxxxxxxxx wrote: > >On Mon, Apr 20, 2020 at 01:28:22PM +0100, Edward Cree wrote: > >> On 20/04/2020 12:52, Jiri Pirko wrote: > >> > However for TC, when user specifies "HW_STATS_DISABLED", the driver > >> > should not do stats. > >> > >> What should a driver do if the user specifies DISABLED, but the stats > >> are still needed for internal bookkeeping (e.g. to prod an ARP entry > >> that's in use for encapsulation offload, so that it doesn't get > >> expired out of the cache)? Enable the stats on the HW anyway but > >> not report them to FLOW_CLS_STATS? Or return an error? > > > >My interpretation is that HW_STATS_DISABLED means that the front-end > >does not care / does not need counters. The driver can still allocate > > That is wrong interpretation. If user does not care, he specifies "ANY". > That is the default. > > When he says "DISABLED" he means disabled. Not "I don't care". Under what circumstances would the user care about this? Rejecting such config seems to be just to annoy user? I mean, the user is forced to use SW datapath just because HW can't turn off stats?! Same for a config change, why do i need to change my rules to say 'enable stats' even though I don't need them in first place? Unlike the inverse (want feature X but HW can't support it), it makes no sense to me to reject with an error here: stats-off is just a hint that can be safely ignored.