X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=datapath%2Fvport.c;h=93ab2b5f78c4bcfb9526f46c88822e225ffc5058;hb=db0c31340fe260f281aaea07b0fbce41bef07c7d;hp=6f2b2f640f455b053a802586798422d2e5d23c7f;hpb=806b46ef3d1f3e17e87d91c4fb0041aa87709497;p=sliver-openvswitch.git diff --git a/datapath/vport.c b/datapath/vport.c index 6f2b2f640..93ab2b5f7 100644 --- a/datapath/vport.c +++ b/datapath/vport.c @@ -354,7 +354,8 @@ int ovs_vport_get_options(const struct vport *vport, struct sk_buff *skb) * skb->data should point to the Ethernet header. The caller must have already * called compute_ip_summed() to initialize the checksumming fields. */ -void ovs_vport_receive(struct vport *vport, struct sk_buff *skb) +void ovs_vport_receive(struct vport *vport, struct sk_buff *skb, + struct ovs_key_ipv4_tunnel *tun_key) { struct pcpu_tstats *stats; @@ -364,9 +365,7 @@ void ovs_vport_receive(struct vport *vport, struct sk_buff *skb) stats->rx_bytes += skb->len; u64_stats_update_end(&stats->syncp); - if (!(vport->ops->flags & VPORT_F_TUN_ID)) - OVS_CB(skb)->tun_key = NULL; - + OVS_CB(skb)->tun_key = tun_key; ovs_dp_process_received_packet(vport, skb); }