On Thu, 25 Jan 2018 13:41:58 -0200, Marcelo Ricardo Leitner wrote:
> On Wed, Jan 24, 2018 at 04:17:46PM -0800, Jakub Kicinski wrote:
> ...
> > +static inline bool
> > +tc_cls_can_offload_and_chain0(const struct net_device *dev,
> > +                         struct tc_cls_common_offload *common)
> > +{
> > +   if (common->chain_index) {
> > +           NL_SET_ERR_MSG(common->extack,
> > +                          "Driver supports only offload of chain 0");
> > +           return false;
> > +   }
> > +   return tc_can_offload_extack(dev, common->extack);  
> 
> I know that most of the drivers updated in this patchset checks it
> this way, but considering both checks end up being done anyway in the
> success case and that performance POV on error path is irrelevant
> here, wouldn't it be better to swap both conditions here? I.e., first
> check if the device can offload, to only then check what is being
> offloaded?
> 
> Otherwise the first error would be implying that the device can
> offload, just not the specified chain.

Sure, can do.

Reply via email to