aboutsummaryrefslogtreecommitdiffstats
path: root/net/openvswitch/flow.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/openvswitch/flow.c')
-rw-r--r--net/openvswitch/flow.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/net/openvswitch/flow.c b/net/openvswitch/flow.c
index d186eb65a391..bf8442071d75 100644
--- a/net/openvswitch/flow.c
+++ b/net/openvswitch/flow.c
@@ -606,12 +606,13 @@ static int key_extract(struct sk_buff *skb, struct sw_flow_key *key)
606 return 0; 606 return 0;
607} 607}
608 608
609int ovs_flow_key_extract(struct sk_buff *skb, struct sw_flow_key *key) 609int ovs_flow_key_extract(struct ovs_key_ipv4_tunnel *tun_key,
610 struct sk_buff *skb, struct sw_flow_key *key)
610{ 611{
611 /* Extract metadata from packet. */ 612 /* Extract metadata from packet. */
612 memset(key, 0, sizeof(*key)); 613 memset(key, 0, sizeof(*key));
613 if (OVS_CB(skb)->tun_key) 614 if (tun_key)
614 memcpy(&key->tun_key, OVS_CB(skb)->tun_key, sizeof(key->tun_key)); 615 memcpy(&key->tun_key, tun_key, sizeof(key->tun_key));
615 616
616 key->phy.priority = skb->priority; 617 key->phy.priority = skb->priority;
617 key->phy.in_port = OVS_CB(skb)->input_vport->port_no; 618 key->phy.in_port = OVS_CB(skb)->input_vport->port_no;