Martin KaFai Lau
48e8aa6e31
ipv6: Set FLOWI_FLAG_KNOWN_NH at flowi6_flags
...
The neighbor look-up used to depend on the rt6i_gateway (if
there is a gateway) or the rt6i_dst (if it is a RTF_CACHE clone)
as the nexthop address. Note that rt6i_dst is set to fl6->daddr
for the RTF_CACHE clone where fl6->daddr is the one used to do
the route look-up.
Now, we only create RTF_CACHE clone after encountering exception.
When doing the neighbor look-up with a route that is neither a gateway
nor a RTF_CACHE clone, the daddr in skb will be used as the nexthop.
In some cases, the daddr in skb is not the one used to do
the route look-up. One example is in ip_vs_dr_xmit_v6() where the
real nexthop server address is different from the one in the skb.
This patch is going to follow the IPv4 approach and ask the
ip6_pol_route() callers to set the FLOWI_FLAG_KNOWN_NH properly.
In the next patch, ip6_pol_route() will honor the FLOWI_FLAG_KNOWN_NH
and create a RTF_CACHE clone.
Signed-off-by: Martin KaFai Lau <kafai@fb.com >
Acked-by: Julian Anastasov <ja@ssi.bg >
Tested-by: Julian Anastasov <ja@ssi.bg >
Cc: Hannes Frederic Sowa <hannes@stressinduktion.org >
Cc: Steffen Klassert <steffen.klassert@secunet.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2015-05-25 13:25:34 -04:00
..
2015-05-14 12:51:19 +02:00
2015-05-25 13:25:34 -04:00
2015-05-14 01:10:05 -04:00
2015-05-23 01:22:35 -04:00
2015-04-08 16:58:27 +02:00
2015-03-18 10:51:35 +01:00
2015-02-22 15:59:54 -05:00
2015-01-15 01:50:25 -05:00
2014-06-25 19:15:38 +02:00
2015-03-18 10:51:35 +01:00
2012-06-16 15:08:49 +02:00
2014-10-14 02:18:24 +02:00
2015-05-25 13:25:33 -04:00
2014-10-30 17:35:30 +01:00
2013-04-18 20:27:55 +02:00
2014-11-05 14:10:33 -05:00
2013-07-31 16:39:18 +02:00
2015-01-08 12:14:20 +01:00
2014-04-08 10:56:12 +02:00
2014-11-05 14:10:33 -05:00
2014-11-05 14:10:33 -05:00
2014-11-05 14:10:33 -05:00
2014-11-05 14:10:33 -05:00
2015-05-15 20:50:56 +02:00
2014-11-05 14:10:33 -05:00
2014-11-05 14:10:33 -05:00
2014-01-03 23:41:37 +01:00
2013-02-19 02:48:05 +01:00
2015-01-05 13:52:20 +01:00
2014-10-14 02:18:24 +02:00
2013-01-18 00:28:18 +01:00
2014-11-05 14:11:02 -05:00
2013-04-18 20:27:55 +02:00
2013-01-23 12:56:02 +01:00
2013-12-20 14:58:29 +01:00
2015-04-04 12:17:40 -04:00
2015-04-08 16:49:08 +02:00
2015-03-19 11:14:48 +01:00
2013-04-18 20:27:55 +02:00
2014-08-23 12:21:21 -07:00
2013-02-19 02:48:05 +01:00
2013-08-28 00:26:48 +02:00
2014-01-06 14:17:17 +01:00
2014-06-30 11:38:03 +02:00
2014-06-30 11:38:03 +02:00
2014-06-30 11:38:03 +02:00
2014-06-30 11:38:03 +02:00
2014-06-30 11:38:03 +02:00
2014-06-30 11:38:03 +02:00
2012-08-30 03:00:14 +02:00
2014-11-27 13:08:42 +01:00
2014-10-14 02:18:24 +02:00
2013-02-19 02:48:05 +01:00
2015-04-08 18:30:21 +02:00
2014-08-08 16:47:23 +02:00
2014-02-05 17:46:06 +01:00
2015-05-15 22:07:30 +02:00
2015-04-13 17:17:29 +02:00
2014-01-09 23:25:48 +01:00
2014-08-26 21:36:19 +02:00
2015-03-12 13:07:36 +01:00
2013-10-01 13:17:39 +02:00
2015-05-20 13:46:48 +02:00
2015-05-23 01:22:35 -04:00
2013-08-28 00:26:48 +02:00
2015-01-15 01:50:25 -05:00
2015-04-13 17:17:30 +02:00
2015-04-13 17:17:29 +02:00
2015-04-13 17:17:30 +02:00
2015-05-15 20:14:07 +02:00
2015-04-13 20:12:31 +02:00
2015-04-13 17:17:29 +02:00
2015-04-13 20:19:55 +02:00
2015-04-13 17:17:29 +02:00
2015-04-13 17:17:31 +02:00
2015-04-13 17:17:30 +02:00
2015-04-13 20:12:31 +02:00
2015-04-13 17:17:07 +02:00
2015-04-13 20:12:32 +02:00
2015-01-19 14:52:39 +01:00
2015-04-13 17:17:29 +02:00
2015-04-13 17:17:29 +02:00
2015-04-13 17:17:29 +02:00
2015-04-13 17:17:07 +02:00
2015-04-13 17:17:31 +02:00
2015-04-13 17:17:28 +02:00
2015-04-27 13:20:34 -04:00
2015-04-27 13:20:34 -04:00
2015-05-17 17:25:35 +02:00
2015-05-25 13:25:33 -04:00
2014-03-13 14:13:19 +01:00
2014-08-02 15:03:58 -07:00
2015-04-01 11:26:42 +02:00
2014-08-23 12:21:21 -07:00
2014-09-10 12:40:10 -07:00
2013-01-18 00:28:15 +01:00
2014-11-17 12:44:20 +01:00
2013-12-06 12:37:57 -05:00
2013-04-18 20:27:55 +02:00
2014-02-05 17:46:06 +01:00
2014-11-13 12:14:42 +01:00
2011-12-27 20:45:25 +01:00
2014-11-05 14:11:02 -05:00
2014-08-23 12:21:21 -07:00
2011-11-01 09:19:49 +01:00
2014-02-19 11:41:25 +01:00
2012-09-28 11:34:33 +09:00
2014-01-09 21:36:39 +01:00
2014-08-05 18:46:26 -07:00
2013-04-18 20:27:55 +02:00
2014-06-28 18:50:35 +02:00
2012-05-09 20:49:18 -04:00
2015-05-14 13:00:27 +02:00
2012-10-15 13:39:12 +02:00
2012-09-21 12:11:08 +02:00
2014-04-29 18:25:14 +02:00
2013-05-15 14:11:07 +02:00
2013-12-07 23:20:45 +01:00
2014-12-23 14:20:10 +01:00
2012-08-14 21:55:30 -07:00
2015-04-08 16:49:09 +02:00
2011-10-31 19:30:28 -04:00
2013-06-11 02:51:03 -07:00
2014-09-30 01:02:26 -04:00
2015-02-16 17:00:47 +01:00
2014-11-27 13:08:42 +01:00
2014-06-07 11:44:39 -07:00
2015-05-13 18:21:13 +02:00
2015-04-08 16:47:49 +02:00
2014-01-14 15:15:25 -08:00
2015-02-22 15:59:54 -05:00
2015-05-15 20:14:07 +02:00
2013-08-01 11:45:15 +02:00
2015-05-25 13:25:34 -04:00
2012-09-24 14:29:01 +02:00
2015-04-13 16:40:05 -04:00