|
@@ -1853,6 +1853,14 @@ gso:
|
|
|
|
|
|
skb->next = nskb->next;
|
|
skb->next = nskb->next;
|
|
nskb->next = NULL;
|
|
nskb->next = NULL;
|
|
|
|
+
|
|
|
|
+ /*
|
|
|
|
+ * If device doesnt need nskb->dst, release it right now while
|
|
|
|
+ * its hot in this cpu cache
|
|
|
|
+ */
|
|
|
|
+ if (dev->priv_flags & IFF_XMIT_DST_RELEASE)
|
|
|
|
+ skb_dst_drop(nskb);
|
|
|
|
+
|
|
rc = ops->ndo_start_xmit(nskb, dev);
|
|
rc = ops->ndo_start_xmit(nskb, dev);
|
|
if (unlikely(rc != NETDEV_TX_OK)) {
|
|
if (unlikely(rc != NETDEV_TX_OK)) {
|
|
if (rc & ~NETDEV_TX_MASK)
|
|
if (rc & ~NETDEV_TX_MASK)
|