summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenzo Colitti <lorenzo@google.com>2013-07-04 00:52:49 +0900
committerLorenzo Colitti <lorenzo@google.com>2014-01-30 11:39:33 -0800
commitb918c72ce27090051ac9681bfd162abcec0abceb (patch)
tree9e2ea7362cee2f97a159105bfa855ace15089e3f
parent2ac994153e3126cc9a011926b63fcd215a2a71c8 (diff)
downloadolio-linux-3.10-b918c72ce27090051ac9681bfd162abcec0abceb.tar.xz
olio-linux-3.10-b918c72ce27090051ac9681bfd162abcec0abceb.zip
net: ipv6: add missing lock in ping_v6_sendmsg
[net-next commit a1bdc45580fc19e968b32ad27cd7e476a4aa58f6] Bug: 12800827 Change-Id: I93d897e5043dc89bc99f111c89ef4f8b1fa1885d Signed-off-by: Lorenzo Colitti <lorenzo@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/ipv6/ping.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/ipv6/ping.c b/net/ipv6/ping.c
index 1f4886857b4..858788da5a2 100644
--- a/net/ipv6/ping.c
+++ b/net/ipv6/ping.c
@@ -197,6 +197,7 @@ int ping_v6_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
if (hlimit < 0)
hlimit = ip6_dst_hoplimit(dst);
+ lock_sock(sk);
err = ip6_append_data(sk, ping_getfrag, &pfh, len,
0, hlimit,
np->tclass, NULL, &fl6, rt,
@@ -211,6 +212,7 @@ int ping_v6_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
(struct icmp6hdr *) &pfh.icmph,
len);
}
+ release_sock(sk);
if (err)
return err;