On Wed, Sep 4, 2019 at 6:56 AM Paul Blakey <pa...@mellanox.com> wrote: > > Offloaded OvS datapath rules are translated one to one to tc rules, > for example the following simplified OvS rule: > > recirc_id(0),in_port(dev1),eth_type(0x0800),ct_state(-trk) > actions:ct(),recirc(2) > > Will be translated to the following tc rule: > > $ tc filter add dev dev1 ingress \ > prio 1 chain 0 proto ip \ > flower tcp ct_state -trk \ > action ct pipe \ > action goto chain 2 > > Received packets will first travel though tc, and if they aren't stolen > by it, like in the above rule, they will continue to OvS datapath. > Since we already did some actions (action ct in this case) which might > modify the packets, and updated action stats, we would like to continue > the proccessing with the correct recirc_id in OvS (here recirc_id(2)) > where we left off. > > To support this, introduce a new skb extension for tc, which > will be used for translating tc chain to ovs recirc_id to > handle these miss cases. Last tc chain index will be set > by tc goto chain action and read by OvS datapath. > > Signed-off-by: Paul Blakey <pa...@mellanox.com> > Signed-off-by: Vlad Buslov <vla...@mellanox.com> > Acked-by: Jiri Pirko <j...@mellanox.com>
Looks good to me. Acked-by: Pravin B Shelar <pshe...@ovn.org> Thanks, Pravin.