[ovs-dev] Kernel/Userspace Action Mismatch

Justin Pettit jpettit at nicira.com
Thu Dec 18 06:50:38 UTC 2014


Hi, Pravin.  I think commit a36de77 (openvswitch: Userspace tunneling.) introduces a problem when new actions are added in the kernel.  This part makes the kernel's idea of actions defined after _TUNNEL_POP different from userspace:

-=-=-=-=-=-=-=-
@@ -636,6 +663,10 @@ enum ovs_action_attr {
                                       * The data must be zero for the unmasked
                                       * bits. */
 
+#ifndef __KERNEL__
+       OVS_ACTION_ATTR_TUNNEL_PUSH,   /* struct ovs_action_push_tnl*/
+       OVS_ACTION_ATTR_TUNNEL_POP,    /* u32 port number. */
+#endif
        __OVS_ACTION_ATTR_MAX
 };
-=-=-=-=-=-=-=-

The problem is that userspace generates these actions for the kernel, so the enums for any new actions are off by two.

--Justin





More information about the dev mailing list