summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFan Du <fan.du@windriver.com>2013-12-09 10:33:53 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-01-15 15:31:34 -0800
commitce5bc6c999a45748b0e530769cd4623276984a86 (patch)
treee51526cb1162281bb7e7fa7e9e54845a56d17e43
parenta84305bbc625fac01f8700c26d25c99f4d846c56 (diff)
vxlan: release rt when found circular route
[ Upstream commit fffc15a5012e9052d3b236efc56840841a125416 ] 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-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 2ef5b6219f3f..146236891889 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -1672,7 +1672,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 */