The 'vlan_tci' member of struct flow has value 0, not OFP_VLAN_NONE, when
there is no 802.1Q header.

Fixes a problem introduced in commit d9065a90b6b "datapath: VLAN actions
should use push/pop semantics."

Found by sparse.

CC: Pravin Shelar <pshe...@nicira.com>
---
 ofproto/ofproto-dpif.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c
index 3074881..c632df6 100644
--- a/ofproto/ofproto-dpif.c
+++ b/ofproto/ofproto-dpif.c
@@ -2859,7 +2859,7 @@ commit_odp_actions(struct action_xlate_ctx *ctx)
         if (!(flow->vlan_tci & htons(VLAN_CFI))) {
             nl_msg_put_flag(odp_actions, OVS_ACTION_ATTR_POP_VLAN);
         } else {
-            if (base->vlan_tci != OFP_VLAN_NONE) {
+            if (base->vlan_tci != htons(0)) {
                 nl_msg_put_flag(odp_actions, OVS_ACTION_ATTR_POP_VLAN);
             }
             nl_msg_put_be16(odp_actions, OVS_ACTION_ATTR_PUSH_VLAN,
-- 
1.7.4.4

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to