diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index 1fd784f3e2ecf4dba2f48dd6ff134172b80df0d5..47123bf5eb0fb439a944cfbcfe99112b97e157d1 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -848,12 +848,14 @@ do_append_data: } else { dst_release(dst); } + dst = NULL; } if (err > 0) err = np->recverr ? net_xmit_errno(err) : 0; release_sock(sk); out: + dst_release(dst); fl6_sock_release(flowlabel); if (!err) return len;