android_kernel_xiaomi_sm8350/net/ipv4
Timo Teräs d11a4dc18b ipv4: check rt_genid in dst_check
Xfrm_dst keeps a reference to ipv4 rtable entries on each
cached bundle. The only way to renew xfrm_dst when the underlying
route has changed, is to implement dst_check for this. This is
what ipv6 side does too.

The problems started after 87c1e12b5e
("ipsec: Fix bogus bundle flowi") which fixed a bug causing xfrm_dst
to not get reused, until that all lookups always generated new
xfrm_dst with new route reference and path mtu worked. But after the
fix, the old routes started to get reused even after they were expired
causing pmtu to break (well it would occationally work if the rtable
gc had run recently and marked the route obsolete causing dst_check to
get called).

Signed-off-by: Timo Teras <timo.teras@iki.fi>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-03-19 21:00:41 -07:00
..
netfilter netfilter: xtables: restore indentation 2010-02-26 17:53:31 +01:00
af_inet.c percpu: add __percpu sparse annotations to net 2010-02-16 23:05:38 -08:00
ah4.c xfrm: SA lookups signature with mark 2010-02-22 16:20:22 -08:00
arp.c net neigh: Decouple per interface neighbour table controls from binary sysctls 2010-02-16 15:55:18 -08:00
cipso_ipv4.c
datagram.c
devinet.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-02-25 23:22:42 -08:00
esp4.c xfrm: SA lookups signature with mark 2010-02-22 16:20:22 -08:00
fib_frontend.c net: spread __net_init, __net_exit 2010-01-17 19:16:02 -08:00
fib_hash.c
fib_lookup.h
fib_rules.c net: Allow fib_rule_unregister to batch 2009-12-03 12:22:55 -08:00
fib_semantics.c ipv4: obsolete config in kernel source (IP_ROUTE_PERVASIVE) 2010-02-04 14:58:46 -08:00
fib_trie.c
icmp.c icmp: move icmp_err_convert[] to .rodata 2010-01-23 01:21:28 -08:00
igmp.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-02-14 22:30:54 -08:00
inet_connection_sock.c tcp: account SYN-ACK timeouts & retransmissions 2010-01-17 19:09:39 -08:00
inet_diag.c netlink: With opcode INET_DIAG_BC_S_LE dport was compared in inet_diag_bc_run() 2010-01-19 14:12:20 -08:00
inet_fragment.c
inet_hashtables.c tcp: Fix a connect() race with timewait sockets 2009-12-08 20:17:51 -08:00
inet_lro.c
inet_timewait_sock.c [PATCH] tcp: documents timewait refcnt tricks 2009-12-08 20:19:53 -08:00
inetpeer.c
ip_forward.c
ip_fragment.c ipv4: ip_fragment: fix unbalanced rcu_read_unlock() 2010-02-02 11:46:50 -08:00
ip_gre.c gre: fix hard header destination address checking 2010-03-04 00:53:52 -08:00
ip_input.c
ip_options.c
ip_output.c ip: fix mc_loop checks for tunnels with multicast outer addresses 2010-01-06 20:37:01 -08:00
ip_sockglue.c tcp: Generalized TTL Security Mechanism 2010-01-11 16:28:01 -08:00
ipcomp.c xfrm: SA lookups signature with mark 2010-02-22 16:20:22 -08:00
ipconfig.c ipconfig: Handle devices which take some time to come up. 2010-03-12 00:00:17 -08:00
ipip.c tunnels: fix netns vs proto registration ordering 2010-02-16 14:55:25 -08:00
ipmr.c ipmr: remove useless checks from ipmr_device_event 2010-02-17 13:27:10 -08:00
Kconfig
Makefile
netfilter.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2009-12-08 07:55:01 -08:00
proc.c tcp: Add SNMP counters for backlog and min_ttl drops 2010-03-08 10:45:27 -08:00
protocol.c
raw.c
route.c ipv4: check rt_genid in dst_check 2010-03-19 21:00:41 -07:00
syncookies.c net: Add rtnetlink init_rcvwnd to set the TCP initial receive window 2009-12-23 14:13:30 -08:00
sysctl_net_ipv4.c net: TCP thin dupack 2010-02-18 15:43:09 -08:00
tcp_bic.c
tcp_cong.c
tcp_cubic.c
tcp_diag.c tcp: diag: Dont report negative values for rx queue 2009-12-03 16:06:13 -08:00
tcp_highspeed.c
tcp_htcp.c
tcp_hybla.c
tcp_illinois.c
tcp_input.c net: TCP thin dupack 2010-02-18 15:43:09 -08:00
tcp_ipv4.c tcp: Fix tcp_v4_rcv() 2010-03-10 07:32:27 -08:00
tcp_lp.c
tcp_minisocks.c net: backlog functions rename 2010-03-05 13:34:03 -08:00
tcp_output.c tcp: Fix tcp_make_synack() 2010-03-08 11:32:01 -08:00
tcp_probe.c tcp_probe: avoid modulus operation and wrap fix 2010-01-25 15:47:50 -08:00
tcp_scalable.c
tcp_timer.c Merge branch 'for-next' into for-linus 2010-03-08 16:55:37 +01:00
tcp_vegas.c
tcp_vegas.h
tcp_veno.c
tcp_westwood.c
tcp_yeah.c
tcp.c tcp: Fix OOB POLLIN avoidance. 2010-03-18 20:29:24 -07:00
tunnel4.c
udp_impl.h
udp.c net: backlog functions rename 2010-03-05 13:34:03 -08:00
udplite.c net: spread __net_init, __net_exit 2010-01-17 19:16:02 -08:00
xfrm4_input.c
xfrm4_mode_beet.c
xfrm4_mode_transport.c
xfrm4_mode_tunnel.c
xfrm4_output.c
xfrm4_policy.c ipsec: Fix bogus bundle flowi 2010-03-03 01:04:37 -08:00
xfrm4_state.c
xfrm4_tunnel.c