Herbert Xu
8ec6068428
gro: Disable frag0 optimization on IPv6 ext headers
...
commit 57ea52a865144aedbcd619ee0081155e658b6f7d upstream.
The GRO fast path caches the frag0 address. This address becomes
invalid if frag0 is modified by pskb_may_pull or its variants.
So whenever that happens we must disable the frag0 optimization.
This is usually done through the combination of gro_header_hard
and gro_header_slow, however, the IPv6 extension header path did
the pulling directly and would continue to use the GRO fast path
incorrectly.
This patch fixes it by disabling the fast path when we enter the
IPv6 extension header path.
Fixes: 78a478d0ef ("gro: Inline skb_gro_header and cache frag0 virtual address")
Reported-by: Slava Shwartsman <slavash@mellanox.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
Signed-off-by: Eric Dumazet <edumazet@google.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
Signed-off-by: Willy Tarreau <w@1wt.eu >
2017-06-08 00:46:54 +02:00
..
2013-05-17 14:31:05 -04:00
2017-02-10 11:04:06 +01:00
2015-04-29 10:33:54 +02:00
2013-05-04 12:31:18 -07:00
2013-04-08 16:36:23 +02:00
2015-09-21 10:00:07 -07:00
2013-05-05 17:36:20 -07:00
2013-04-11 03:39:00 -07:00
2016-03-03 15:06:20 -08:00
2017-02-10 11:04:07 +01:00
2013-05-11 16:12:44 -07:00
2013-05-06 15:41:42 -07:00
2013-12-04 10:56:22 -08:00
2016-08-21 23:22:32 +02:00
2013-05-14 13:40:45 +02:00
2013-05-25 20:30:31 -07:00
2013-04-16 17:38:10 -07:00
2013-04-28 02:13:43 +01:00
2013-05-13 18:27:18 +04:00
2013-04-23 14:09:39 -04:00
2014-09-05 16:28:37 -07:00
2016-08-21 23:22:34 +02:00
2013-05-14 10:23:57 +05:30
2013-04-12 00:31:18 +02:00
2013-04-30 15:21:02 -07:00
2013-05-30 10:51:20 -07:00
2013-05-07 19:46:02 -07:00
2016-03-09 15:31:54 -08:00
2014-02-13 13:48:00 -08:00
2014-01-09 12:24:22 -08:00
2014-04-26 17:15:35 -07:00
2013-10-13 16:08:33 -07:00
2013-04-10 23:41:16 +02:00
2013-11-29 11:11:44 -08:00
2014-04-03 12:01:04 -07:00
2015-04-19 10:10:49 +02:00
2014-11-14 08:47:55 -08:00
2013-04-18 09:00:26 -07:00
2013-04-29 15:54:39 -07:00
2013-05-15 14:42:15 -07:00
2013-05-01 08:04:12 -07:00
2014-09-17 09:03:57 -07:00
2013-07-21 18:21:25 -07:00
2013-04-30 17:04:01 -07:00
2013-04-12 11:22:35 -07:00
2013-04-10 16:33:53 -07:00
2013-12-08 07:29:27 -08:00
2014-11-21 09:22:54 -08:00
2014-02-13 13:48:00 -08:00
2016-06-07 10:42:52 +02:00
2014-11-14 08:47:55 -08:00
2016-02-25 11:57:47 -08:00
2016-08-21 23:22:37 +02:00
2013-05-31 11:32:30 +02:00
2013-07-25 14:07:42 -07:00
2017-06-08 00:46:48 +02:00
2014-04-14 06:42:19 -07:00
2013-05-11 15:23:17 -07:00
2013-05-01 17:51:54 -07:00
2015-01-08 09:58:16 -08:00
2017-02-06 09:04:07 +01:00
2013-04-29 18:28:19 -07:00
2015-04-29 10:34:00 +02:00
2013-04-29 15:54:27 -07:00
2013-10-05 07:13:11 -07:00
2013-05-01 13:20:04 -07:00
2016-02-25 11:57:46 -08:00
2013-05-01 16:36:22 +05:30
2013-05-02 21:52:26 +05:30
2013-04-30 17:04:02 -07:00
2013-07-28 16:30:11 -07:00
2016-03-16 08:41:37 -07:00
2013-08-20 08:43:03 -07:00
2016-03-03 15:06:22 -08:00
2013-05-07 18:38:27 -07:00
2013-04-29 18:28:40 -07:00
2013-05-01 17:31:42 -04:00
2017-02-10 11:03:46 +01:00
2014-03-23 21:38:16 -07:00
2013-04-30 17:04:00 -07:00
2015-07-03 19:48:08 -07:00
2013-04-29 18:28:41 -07:00
2015-03-06 14:40:48 -08:00
2014-03-31 09:58:12 -07:00
2014-06-07 13:25:28 -07:00
2014-04-14 06:42:19 -07:00
2013-12-11 22:36:28 -08:00
2013-04-11 10:00:05 +08:00
2013-04-16 18:47:14 +09:00
2013-04-30 10:09:06 +02:00
2013-10-13 16:08:28 -07:00
2014-04-03 12:01:05 -07:00
2014-02-06 11:08:12 -08:00
2014-06-07 13:25:35 -07:00
2017-02-10 11:03:32 +01:00
2013-04-29 13:54:36 -04:00
2013-05-08 11:51:05 -07:00
2013-04-16 15:29:45 +02:00
2014-06-26 15:12:38 -04:00
2013-07-28 16:30:05 -07:00
2014-12-06 15:05:46 -08:00
2014-10-05 14:54:15 -07:00
2015-05-17 09:51:33 -07:00
2013-05-02 12:10:19 +02:00
2013-04-29 15:54:37 -07:00
2014-03-06 21:30:12 -08:00
2013-09-14 06:54:55 -07:00
2014-06-07 13:25:29 -07:00
2014-06-30 20:09:45 -07:00
2016-01-22 19:47:52 -08:00
2013-04-25 15:25:23 +02:00
2014-10-09 12:18:43 -07:00
2013-05-13 09:45:01 -04:00
2013-04-29 15:42:02 -04:00
2016-06-07 10:42:47 +02:00
2013-12-20 07:45:08 -08:00
2014-11-21 09:22:54 -08:00
2013-04-30 17:04:06 -07:00
2013-04-08 17:28:34 +02:00
2013-05-16 07:55:07 -07:00
2013-04-30 17:04:02 -07:00
2013-04-19 16:39:13 -04:00
2013-05-31 11:32:30 +02:00
2016-03-09 15:31:54 -08:00
2013-05-05 10:58:06 -07:00
2014-05-30 21:52:14 -07:00
2013-06-12 16:29:47 -07:00
2015-07-03 19:48:09 -07:00
2013-04-08 16:57:15 -07:00
2014-11-21 09:22:56 -08:00
2013-04-29 15:54:37 -07:00
2013-04-30 17:04:00 -07:00
2016-08-27 11:40:23 +02:00
2013-10-13 16:08:35 -07:00
2014-01-09 12:24:23 -08:00
2016-10-20 00:46:32 +02:00
2013-04-30 09:36:50 -07:00
2016-06-07 10:42:44 +02:00
2016-03-16 08:41:37 -07:00
2014-09-17 09:04:00 -07:00
2017-02-10 11:03:52 +01:00
2017-02-10 11:03:52 +01:00
2013-12-04 10:56:10 -08:00
2013-04-23 09:50:30 -06:00
2013-04-19 09:33:36 +02:00
2013-07-21 18:21:29 -07:00
2014-01-15 15:28:47 -08:00
2013-05-02 07:34:58 -07:00
2017-06-08 00:46:54 +02:00
2013-05-23 11:58:55 +02:00
2014-06-26 15:12:37 -04:00
2013-05-01 15:00:24 -04:00
2013-04-14 12:59:28 -04:00
2016-03-03 15:06:24 -08:00
2015-08-03 09:29:47 -07:00
2015-05-17 09:51:32 -07:00
2013-04-29 15:54:36 -07:00
2013-05-04 14:47:26 -04:00
2013-05-08 09:55:05 -04:00
2013-05-02 21:50:38 +05:30
2013-04-09 14:58:32 -05:00
2014-11-14 08:48:01 -08:00
2014-11-14 08:47:58 -08:00
2017-02-06 23:33:04 +01:00
2013-04-19 22:25:51 +02:00
2013-04-17 10:21:17 -06:00
2016-10-20 00:46:30 +02:00
2013-05-17 14:12:06 -06:00
2013-04-17 10:21:17 -06:00
2013-04-17 10:21:17 -06:00
2016-06-07 10:42:44 +02:00
2013-04-17 10:21:17 -06:00
2017-02-10 11:03:40 +01:00
2013-05-07 20:16:25 -07:00
2016-08-21 23:22:36 +02:00
2016-06-07 10:42:52 +02:00
2017-06-08 00:46:47 +02:00
2013-05-05 13:23:27 -07:00
2013-04-16 18:51:16 -07:00
2013-06-19 12:55:10 +02:00
2014-08-07 14:30:26 -07:00
2013-05-01 17:29:47 -04:00
2013-05-01 17:29:39 -04:00
2013-04-09 14:13:35 -04:00
2015-01-16 06:59:00 -08:00
2016-02-25 11:57:47 -08:00
2015-01-29 17:40:57 -08:00
2016-02-25 11:57:49 -08:00
2013-04-29 15:54:28 -07:00
2013-12-08 07:29:24 -08:00
2013-06-02 20:53:59 -07:00
2013-09-26 17:18:13 -07:00
2013-05-28 22:47:13 -04:00
2013-09-07 22:09:58 -07:00
2013-04-30 17:04:09 -07:00
2013-04-29 19:14:20 -07:00
2013-04-12 10:26:23 +02:00
2013-04-12 10:26:23 +02:00
2014-07-17 15:58:03 -07:00
2013-05-24 16:22:50 -07:00
2013-05-24 16:22:50 -07:00
2013-04-29 18:28:22 -07:00
2013-05-30 09:20:20 +02:00
2016-08-21 23:22:36 +02:00
2013-04-09 13:19:39 -04:00
2015-10-22 14:37:52 -07:00
2013-10-18 07:45:47 -07:00
2013-04-09 14:13:29 -04:00
2013-04-11 13:14:36 -07:00
2017-02-10 11:03:32 +01:00
2016-02-19 14:22:37 -08:00
2015-10-27 09:44:48 +09:00
2013-05-06 09:24:16 +03:00
2013-06-14 19:24:42 -10:00
2014-06-26 15:12:37 -04:00
2013-06-06 11:52:14 -07:00
2013-04-09 10:48:33 -07:00
2014-01-09 12:24:23 -08:00
2013-06-20 19:02:45 +04:00
2017-02-10 11:03:42 +01:00
2013-04-30 17:04:03 -07:00
2014-11-14 08:47:55 -08:00
2013-04-30 15:50:12 +05:30
2013-04-29 15:54:38 -07:00
2013-06-12 16:29:46 -07:00
2013-04-17 12:35:32 -07:00
2016-01-28 21:49:35 -08:00
2013-06-12 16:29:44 -07:00
2013-05-09 09:40:49 -07:00
2013-11-29 11:11:42 -08:00
2013-08-11 18:35:24 -07:00
2015-01-29 17:40:56 -08:00
2013-04-25 21:01:45 +08:00
2013-10-01 09:17:45 -07:00
2016-03-16 08:41:36 -07:00
2013-05-11 14:29:11 -07:00
2016-01-28 21:49:35 -08:00
2013-04-19 00:40:07 +02:00
2016-03-16 08:41:36 -07:00
2013-05-20 10:24:22 +09:30
2013-04-13 15:31:58 +02:00
2013-11-13 12:05:29 +09:00
2015-05-06 21:56:22 +02:00
2015-01-08 09:58:16 -08:00
2017-02-10 11:03:41 +01:00
2013-07-28 16:29:55 -07:00
2013-12-08 07:29:27 -08:00
2013-04-29 15:54:34 -07:00
2013-04-29 15:54:38 -07:00
2014-02-13 13:48:00 -08:00
2013-05-20 12:15:59 -07:00
2013-05-31 11:31:50 +02:00
2013-08-29 09:47:39 -07:00
2015-03-26 15:00:58 +01:00
2013-05-07 20:16:25 -07:00