On Thu, Jun 29, 2017 at 05:33:32PM +0300, Or Gerlitz wrote: > On Wed, Jun 28, 2017 at 11:29 PM, Simon Horman > <simon.hor...@netronome.com> wrote: > > +nfp_flower_compile_meta_tci(struct nfp_flower_meta_two *frame, > > + struct tc_cls_flower_offload *flow, u8 key_type, > > + bool mask_version) > > what's the role of the mask_version flag here and elsewhere in the > sister functions?
Hi Or, I chatted with Pieter about this and my understanding is that metadata comes in pairs; masked and umasked. The mask_version parameter controls which of the pair is compiled. > > > +{ > > + struct flow_dissector_key_vlan *flow_vlan; > > + u16 tmp_tci; > > + > > + /* Populate the metadata frame. */ > > + frame->nfp_flow_key_layer = key_type; > > + frame->mask_id = ~0; > > + > > + if (mask_version) { > > + frame->tci = cpu_to_be16(~0); > > + return; > > + } > > +