udp_tunnel_xmit_skb() will free the skb and release the rt->dst reference in the error case. There is no need (and it would actully trigger a warning) when we did. This problem was not visible before, as udp_tunnel_xmit_skb() would never return a value < 0
Signed-off-by: Andreas Schultz <aschu...@tpip.net> Acked-by: Jiri Benc <jb...@redhat.com> --- net/tipc/udp_media.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/net/tipc/udp_media.c b/net/tipc/udp_media.c index c170d31..de8e110 100644 --- a/net/tipc/udp_media.c +++ b/net/tipc/udp_media.c @@ -181,10 +181,6 @@ static int tipc_udp_send_msg(struct net *net, struct sk_buff *skb, dst->ipv4.s_addr, 0, ttl, 0, src->udp_port, dst->udp_port, false, true); - if (err < 0) { - ip_rt_put(rt); - goto tx_error; - } #if IS_ENABLED(CONFIG_IPV6) } else { struct dst_entry *ndst; -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html