[PATCH net-next] tcp: fix mdev comment in tcp_rtt_estimator()
Ziran Zhang <[email protected]>
| Newsgroups | gmane.linux.network,gmane.linux.kernel |
|---|---|
| Message-ID | <[email protected]> |
The old comment "mdev = 3/4 mdev + 1/4 new" only describes the common case. However, when RTT drops sharply, the code applies a finer gain of 1/32 instead of 1/4, resulting in: mdev = 31/32 mdev + 1/32 * new. Express both cases with a unified formula using variable gain g. Signed-off-by: Ziran Zhang <[email protected]> --- net/ipv4/tcp_input.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 0f60a1dbf..2c9feb181 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -1108,7 +1108,10 @@ static void tcp_rtt_estimator(struct sock *sk, long mrtt_us) } else { m -= (tp->mdev_us >> 2); /* similar update on mdev */ } - tp->mdev_us += m; /* mdev = 3/4 mdev + 1/4 new */ + tp->mdev_us += m; /* + * mdev = (1-g)*mdev + g*new, g=1/4 normally, + * g=1/32 on sharp RTT drop + */ if (tp->mdev_us > tp->mdev_max_us) { tp->mdev_max_us = tp->mdev_us; if (tp->mdev_max_us > tp->rttvar_us) -- 2.51.0