>On Wed, Jul 13, 2016 at 11:24 AM, Justin Pettit <jpet...@ovn.org> wrote: > >> On Jul 12, 2016, at 7:53 PM, Zong Kai Li <zealo...@gmail.com> wrote: >> >>> + <p> >>> + The <code>reg</code><var>X</var> symbols are 32-bit integers. >>> + The <code>xxreg</code><var>X</var> symbols are 128-bit integers, >>> + which overlay four of the 32-bit registers: <code>xxreg0</code> >>> + overlays <code>reg0</code> through <code>reg3</code>, with >>> + <code>reg0</code> supplying the most-significant bits of >>> + <code>xxreg0</code> and <code>reg3</code> the least-signficant. >>> + <code>xxreg1</code> similarly overlays <code>reg4</code> through >>> + <code>reg7</code>. >>> + </p> >>> + >> >> I think REGBIT_CONNTRACK_** defined in ovn-northd will be covered by xxreg0. >> Since you renumbered MFF_LOG_DNAT_ZONE...MFF_LOG_OUTPUT from >> MFF_REG3...MFF_REG7 to MFF_REG11...MFF_REG15. REGBIT_CONNTRACK_** >> which are using MFF_REG0 should be renumbered too. > > I'm not sure I understand. Those registers are that I renumbered are > physical (used by ovn-controller) and not accessible by logical flows. The > REGBIT_CONNTRACK_* are only used by logical flows (in ovn-northd), so they > need to be in the logical registers that are accessible by xxregX and xregX. > > --Justin > >
Yes, REGBIT_CONNTRACK_* are only used by logical flows, just like "inport", "outport". But things are little different, since "inport" and "outport" are symbols and they will be translated, while REGBIT_CONNTRACK_* are not, they are "reg0[..]" already, ovn-controller will directly submit them to ovs. If a logical flow both use REGBIT_CONNTRACK_* and xxreg0, reg0 will be called twice, the directly way and the symbol translation way. Thanks, Zong Kai, LI _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev