[ovs-dev] Kernel/Userspace Action Mismatch

Pravin Shelar pshelar at nicira.com
Thu Dec 18 18:15:20 UTC 2014


On Wed, Dec 17, 2014 at 10:50 PM, Justin Pettit <jpettit at nicira.com> wrote:
> 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.
>

All new actions should be added before these userspace only actions.
So that the action ID remains same for userspace and kernel module.



More information about the dev mailing list