diff options
| author | Mat Martineau <mathew.j.martineau@linux.intel.com> | 2017-12-21 13:29:10 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2017-12-26 17:23:50 -0500 |
| commit | fb7df5e4000a6bc19e350a00a93b16c602bd2dd8 (patch) | |
| tree | 7c25fb9f884c1df909e4877bff6724606e0ecc58 /net/ipv4 | |
| parent | 595476cb67333e2498ee41de11ac37f05957062b (diff) | |
tcp: md5: Handle RCU dereference of md5sig_info
Dereference tp->md5sig_info in tcp_v4_destroy_sock() the same way it is
done in the adjacent call to tcp_clear_md5_list().
Resolves this sparse warning:
net/ipv4/tcp_ipv4.c:1914:17: warning: incorrect type in argument 1 (different address spaces)
net/ipv4/tcp_ipv4.c:1914:17: expected struct callback_head *head
net/ipv4/tcp_ipv4.c:1914:17: got struct callback_head [noderef] <asn:4>*<noident>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Acked-by: Christoph Paasch <cpaasch@apple.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4')
| -rw-r--r-- | net/ipv4/tcp_ipv4.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index dd945b114215..5d203248123e 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c | |||
| @@ -1911,7 +1911,7 @@ void tcp_v4_destroy_sock(struct sock *sk) | |||
| 1911 | /* Clean up the MD5 key list, if any */ | 1911 | /* Clean up the MD5 key list, if any */ |
| 1912 | if (tp->md5sig_info) { | 1912 | if (tp->md5sig_info) { |
| 1913 | tcp_clear_md5_list(sk); | 1913 | tcp_clear_md5_list(sk); |
| 1914 | kfree_rcu(tp->md5sig_info, rcu); | 1914 | kfree_rcu(rcu_dereference_protected(tp->md5sig_info, 1), rcu); |
| 1915 | tp->md5sig_info = NULL; | 1915 | tp->md5sig_info = NULL; |
| 1916 | } | 1916 | } |
| 1917 | #endif | 1917 | #endif |
