Eric Dumazet
d983ea6f16
tcp: add rcu protection around tp->fastopen_rsk
...
Both tcp_v4_err() and tcp_v6_err() do the following operations
while they do not own the socket lock :
fastopen = tp->fastopen_rsk;
snd_una = fastopen ? tcp_rsk(fastopen)->snt_isn : tp->snd_una;
The problem is that without appropriate barrier, the compiler
might reload tp->fastopen_rsk and trigger a NULL deref.
request sockets are protected by RCU, we can simply add
the missing annotations and barriers to solve the issue.
Fixes: 168a8f5805
("tcp: TCP Fast Open Server - main code path")
Signed-off-by: Eric Dumazet <edumazet@google.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2019-10-13 10:13:08 -07:00
..
2019-09-05 12:17:50 +02:00
2019-09-16 12:06:23 +02:00
2019-09-17 10:27:46 -07:00
2019-10-02 12:19:53 -04:00
2019-09-18 11:14:31 -07:00
2019-09-11 01:09:37 +01:00
2019-08-28 17:24:22 +02:00
2019-09-19 14:14:28 -07:00
2019-09-16 09:56:27 -07:00
2019-09-17 00:40:05 -05:00
2019-09-23 19:37:49 -07:00
2019-09-28 17:47:33 -07:00
2019-09-19 13:27:23 -07:00
2019-09-21 10:59:54 -07:00
2019-09-13 12:47:36 +02:00
2019-09-13 12:47:36 +02:00
2019-09-13 12:47:36 +02:00
2019-09-13 12:47:36 +02:00
2019-09-13 12:47:36 +02:00
2019-09-29 10:24:23 -07:00
2019-09-21 10:26:24 -07:00
2019-09-03 12:37:16 +01:00
2019-09-28 12:39:07 -07:00
2019-09-19 16:24:24 -07:00
2019-09-04 14:57:28 +05:30
2019-09-27 17:00:27 -07:00
2019-09-18 10:33:46 -07:00
2019-09-28 08:14:15 -07:00
2019-08-30 21:29:32 -04:00
2019-08-27 09:22:38 -06:00
2019-08-27 09:22:38 -06:00
2019-09-02 15:55:03 +01:00
2019-10-01 15:45:03 +02:00
2019-08-28 21:17:12 -06:00
2019-08-28 21:17:04 -06:00
2019-09-05 19:52:34 -06:00
2019-09-24 16:31:50 -07:00
2019-08-28 00:30:11 +02:00
2019-09-05 10:15:16 +02:00
2019-09-19 15:31:27 -07:00
2019-09-20 15:45:07 -07:00
2019-09-24 15:54:10 -07:00
2019-09-21 09:47:19 -07:00
2019-09-08 14:53:58 +02:00
2019-09-04 13:38:26 +02:00
2019-09-24 13:37:28 +02:00
2019-09-02 22:44:04 +02:00
2019-09-03 09:36:36 +02:00
2019-09-17 19:15:14 -07:00
2019-09-25 17:51:40 -07:00
2019-09-23 11:21:04 -07:00
2019-08-25 12:44:38 +09:00
2019-09-18 10:33:46 -07:00
2019-09-19 13:27:23 -07:00
2019-08-29 16:43:22 +02:00
2019-09-03 19:21:19 +02:00
2019-09-05 19:52:33 -06:00
2019-09-22 10:34:46 -07:00
2019-09-16 11:44:05 +02:00
2019-09-25 09:55:59 -07:00
2019-09-27 17:00:27 -07:00
2019-08-26 11:40:24 +02:00
2019-09-28 14:05:38 -07:00
2019-09-05 11:40:54 +02:00
2019-08-27 19:02:59 +02:00
2019-09-18 15:58:13 +02:00
2019-08-28 13:01:25 +02:00
2019-09-29 10:33:41 -07:00
2019-09-24 15:54:08 -07:00
2019-09-24 12:36:31 -07:00
2019-09-24 16:48:02 -07:00
2019-09-03 11:33:29 +02:00
2019-09-28 08:14:15 -07:00
2019-08-28 11:50:33 +02:00
2019-09-11 12:39:19 +02:00
2019-09-17 19:15:14 -07:00
2019-09-25 17:51:39 -07:00
2019-08-30 16:12:10 +02:00
2019-09-19 15:32:45 -07:00
2019-09-24 15:54:07 -07:00
2019-09-07 04:28:05 -03:00
2019-09-28 08:14:15 -07:00
2019-09-02 11:43:54 +01:00
2019-09-25 17:51:40 -07:00
2019-09-24 15:54:11 -07:00
2019-09-30 18:52:00 +02:00
2019-09-01 13:33:16 +02:00
2019-08-29 13:49:13 -07:00
2019-09-28 08:14:15 -07:00
2019-09-05 12:32:05 +02:00
2019-09-24 15:54:11 -07:00
2019-09-24 15:54:09 -07:00
2019-09-28 14:05:38 -07:00
2019-09-29 10:33:41 -07:00
2019-10-04 18:11:08 -07:00
2019-09-25 17:51:40 -07:00
2019-09-28 12:39:07 -07:00
2019-09-26 10:10:44 -07:00
2019-09-07 04:28:04 -03:00
2019-09-24 15:54:11 -07:00
2019-09-27 19:37:27 -07:00
2019-09-03 09:30:45 -04:00
2019-09-16 21:32:57 +02:00
2019-09-13 12:35:33 +02:00
2019-09-13 12:35:33 +02:00
2019-09-13 12:47:36 +02:00
2019-09-20 15:15:24 -04:00
2019-08-29 12:55:02 -07:00
2019-09-11 14:46:02 +01:00
2019-09-13 21:15:41 +10:00
2019-09-24 15:54:08 -07:00
2019-09-24 15:54:08 -07:00
2019-09-07 04:28:04 -03:00
2019-08-28 15:25:53 -05:00
2019-09-23 19:16:01 -07:00
2019-09-23 19:16:01 -07:00
2019-08-28 11:29:38 +02:00
2019-09-05 11:54:14 +02:00
2019-10-04 18:11:08 -07:00
2019-09-18 10:33:46 -07:00
2019-09-05 21:16:22 +02:00
2019-09-25 17:51:39 -07:00
2019-08-26 11:35:13 +02:00
2019-09-21 03:25:10 +02:00
2019-09-12 12:09:16 +02:00
2019-09-12 21:05:34 -04:00
2019-08-23 16:39:26 +01:00
2019-09-25 17:51:39 -07:00
2019-09-16 17:25:49 -07:00
2019-08-26 16:27:01 -07:00
2019-09-25 17:42:29 +02:00
2019-09-16 11:43:38 -05:00
2019-09-28 12:39:07 -07:00
2019-09-28 08:14:15 -07:00
2019-09-12 21:05:34 -04:00
2019-09-24 15:54:11 -07:00
2019-10-01 18:42:15 +02:00
2019-09-24 15:54:07 -07:00
2019-09-11 15:27:09 +01:00
2019-09-25 17:51:39 -07:00
2019-09-25 17:51:41 -07:00
2019-09-11 12:34:29 +02:00
2019-09-07 21:42:25 +02:00
2019-09-04 13:37:17 +02:00
2019-09-17 20:03:49 -06:00
2019-10-13 10:13:08 -07:00
2019-09-25 17:51:40 -07:00
2019-08-26 12:15:06 +03:00
2019-08-30 07:27:17 -07:00
2019-08-28 11:50:43 +02:00
2019-09-16 17:25:49 -07:00
2019-08-31 06:51:49 -04:00
2019-10-01 15:45:03 +02:00
2019-09-24 15:54:10 -07:00
2019-09-04 14:34:31 +02:00
2019-09-17 12:35:15 -07:00
2019-09-13 21:15:39 +10:00
2019-08-27 09:22:38 -06:00
2019-09-24 15:54:12 -07:00