Merge tag 'mfd-3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd...
[firefly-linux-kernel-4.4.55.git] / net / openvswitch / vport-netdev.c
index 4f01c6d2ffa40dcdb92856d6b35782a43679ad66..5982f3f62835359765c3b1f822f69053e2da4b90 100644 (file)
@@ -49,7 +49,9 @@ static void netdev_port_receive(struct vport *vport, struct sk_buff *skb)
                return;
 
        skb_push(skb, ETH_HLEN);
-       ovs_vport_receive(vport, skb);
+       ovs_skb_postpush_rcsum(skb, skb->data, ETH_HLEN);
+
+       ovs_vport_receive(vport, skb, NULL);
        return;
 
 error:
@@ -170,7 +172,7 @@ static int netdev_send(struct vport *vport, struct sk_buff *skb)
                net_warn_ratelimited("%s: dropped over-mtu packet: %d > %d\n",
                                     netdev_vport->dev->name,
                                     packet_length(skb), mtu);
-               goto error;
+               goto drop;
        }
 
        skb->dev = netdev_vport->dev;
@@ -179,9 +181,8 @@ static int netdev_send(struct vport *vport, struct sk_buff *skb)
 
        return len;
 
-error:
+drop:
        kfree_skb(skb);
-       ovs_vport_record_error(vport, VPORT_E_TX_DROPPED);
        return 0;
 }