X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=datapath%2Fvlan.h;h=46d0db356af0df2cd64f58560e3f4e2bb8619bb2;hb=bd3ad2c3508aaf7283f3ee041ecd3e5108471b21;hp=5d3573b5b974111cadc32d3bbcd4109e69a6770c;hpb=e0edde6fee279cdbbf3c179f5f50adaf0c7c7f1e;p=sliver-openvswitch.git diff --git a/datapath/vlan.h b/datapath/vlan.h index 5d3573b5b..46d0db356 100644 --- a/datapath/vlan.h +++ b/datapath/vlan.h @@ -93,6 +93,11 @@ static inline int vlan_deaccel_tag(struct sk_buff *skb) if (unlikely(!skb)) return -ENOMEM; + if (get_ip_summed(skb) == OVS_CSUM_COMPLETE) + skb->csum = csum_add(skb->csum, + csum_partial(skb->data + (2 * ETH_ALEN), + VLAN_HLEN, 0)); + vlan_set_tci(skb, 0); return 0; }