summaryrefslogtreecommitdiffstats
path: root/drivers/net/vxlan.c
diff options
context:
space:
mode:
authorFan Du <fan.du@windriver.com>2013-12-09 03:33:53 +0100
committerDavid S. Miller <davem@davemloft.net>2013-12-11 04:01:54 +0100
commitfffc15a5012e9052d3b236efc56840841a125416 (patch)
treee1979b61467a70f0c58e47d3a3f14d99602db526 /drivers/net/vxlan.c
parentnet: unix: allow set_peek_off to fail (diff)
downloadlinux-fffc15a5012e9052d3b236efc56840841a125416.tar.xz
linux-fffc15a5012e9052d3b236efc56840841a125416.zip
vxlan: release rt when found circular route
Otherwise causing dst memory leakage. Have Checked all other type tunnel device transmit implementation, no such things happens anymore. Signed-off-by: Fan Du <fan.du@windriver.com> Acked-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/vxlan.c')
-rw-r--r--drivers/net/vxlan.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index 0358c07f7669..249e01c5600c 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -1668,7 +1668,7 @@ static void vxlan_xmit_one(struct sk_buff *skb, struct net_device *dev,
netdev_dbg(dev, "circular route to %pI4\n",
&dst->sin.sin_addr.s_addr);
dev->stats.collisions++;
- goto tx_error;
+ goto rt_tx_error;
}
/* Bypass encapsulation if the destination is local */