diff --git a/[refs] b/[refs] index ea560f41640d..e87d087c875d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9a217a1c7e7f36ec4996314d64267dd711dbd9bf +refs/heads/master: 4e33fa14faecc150e97c0e4f2320745bdc7b7112 diff --git a/trunk/net/ipv6/raw.c b/trunk/net/ipv6/raw.c index c2e629d6aea4..4ae1b19ada5d 100644 --- a/trunk/net/ipv6/raw.c +++ b/trunk/net/ipv6/raw.c @@ -854,7 +854,8 @@ static int rawv6_sendmsg(struct kiocb *iocb, struct sock *sk, } done: dst_release(dst); - release_sock(sk); + if (!inet->hdrincl) + release_sock(sk); out: fl6_sock_release(flowlabel); return err<0?err:len;