[ovs-dev] [PATCH 04/14] datapath: Remove share check for internal devices.

Jesse Gross jesse at nicira.com
Thu Dec 2 20:36:53 UTC 2010


When transmitting on a device, dev_hard_start_xmit() always provides
a private clone.  The skb_share_check() in internal_dev_xmit() is
therefore unnecessary, so remove it.

Signed-off-by: Jesse Gross <jesse at nicira.com>
---
 datapath/vport-internal_dev.c |    7 -------
 1 files changed, 0 insertions(+), 7 deletions(-)

diff --git a/datapath/vport-internal_dev.c b/datapath/vport-internal_dev.c
index 52bd6ce..9079295 100644
--- a/datapath/vport-internal_dev.c
+++ b/datapath/vport-internal_dev.c
@@ -73,13 +73,6 @@ static int internal_dev_xmit(struct sk_buff *skb, struct net_device *netdev)
 	struct internal_dev *internal_dev = internal_dev_priv(netdev);
 	struct vport *vport = rcu_dereference(internal_dev->vport);
 
-	/* We need our own clone. */
-	skb = skb_share_check(skb, GFP_ATOMIC);
-	if (unlikely(!skb)) {
-		vport_record_error(vport, VPORT_E_RX_DROPPED);
-		return 0;
-	}
-
 	skb_reset_mac_header(skb);
 	compute_ip_summed(skb, true);
 	OVS_CB(skb)->flow = NULL;
-- 
1.7.1





More information about the dev mailing list