From: David S. Miller Date: Thu, 10 Feb 2011 04:42:07 +0000 (-0800) Subject: ipv4: Cache learned PMTU information in inetpeer. X-Git-Tag: v2.6.39-rc1~468^2~350 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2c8cec5c10bced2408082a6656170e74ac17231c;p=pandora-kernel.git 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 --- Reading git-diff-tree failed