Thread (3 messages) 3 messages, 2 authors, 2013-02-28

Re: [PATCH net-next] generalize VXLAN forwarding tables

From: David Stevens <hidden>
Date: 2013-02-28 22:57:45

netdev-owner@vger.kernel.org wrote on 02/28/2013 05:27:55 PM:
From: Eric Dumazet <redacted>
On Thu, 2013-02-28 at 14:23 -0500, David L Stevens wrote:
quoted
+   /* if there are multiple destinations, send copies */
+   for (rdst = rdst0->remote_next; rdst; rdst = rdst->remote_next) {
+      struct sk_buff *skb1;
+
+      skb1 = skb_clone(skb, GFP_ATOMIC);
+      rc1 = vxlan_xmit_one(skb1, dev, rdst, did_rsc);
+      if (rc == NETDEV_TX_OK)
+         rc = rc1;
+   }
+
+   rc1 = vxlan_xmit_one(skb, dev, rdst0, did_rsc);
+   if (rc == NETDEV_TX_OK)
+      rc = rc1;
+   return rc;
+}

It looks like vxlan_xmit_one() will overwrite header

So skb_clone() is probably not what you wanted ?
We're only prepending encapsulation headers, and we
do skb_cow_head() for each of those in vxlan_xmit_one().
This skb should be just the original , unencapsulated
packet which is identical in all copies.

                                                +-DLS
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help