diff options
author | David S. Miller <davem@davemloft.net> | 2011-02-09 20:42:07 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-02-14 21:33:07 -0800 |
commit | 2c8cec5c10bced2408082a6656170e74ac17231c (patch) | |
tree | 56f7d290b0c9f305267eeac915ad28f90c10aba2 /firmware | |
parent | d606ef3fe0c57504b8e534c58498f73a6abc049a (diff) |
ipv4: Cache learned PMTU information in inetpeer.
The general idea is that if we learn new PMTU information, we
bump the peer genid.
This triggers the dst_ops->check() code to validate and if
necessary propagate the new PMTU value into the metrics.
Learned PMTU information self-expires.
This means that it is not necessary to kill a cached route
entry just because the PMTU information is too old.
As a consequence:
1) When the path appears unreachable (dst_ops->link_failure
or dst_ops->negative_advice) we unwind the PMTU state if
it is out of date, instead of killing the cached route.
A redirected route will still be invalidated in these
situations.
2) rt_check_expire(), rt_worker_func(), et al. are no longer
necessary at all.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'firmware')
0 files changed, 0 insertions, 0 deletions