From: Cambda Zhu <cam...@linux.alibaba.com> Date: Fri, 24 Apr 2020 16:06:16 +0800
> This patch changes the behavior of TCP_LINGER2 about its limit. The > sysctl_tcp_fin_timeout used to be the limit of TCP_LINGER2 but now it's > only the default value. A new macro named TCP_FIN_TIMEOUT_MAX is added > as the limit of TCP_LINGER2, which is 2 minutes. > > Since TCP_LINGER2 used sysctl_tcp_fin_timeout as the default value > and the limit in the past, the system administrator cannot set the > default value for most of sockets and let some sockets have a greater > timeout. It might be a mistake that let the sysctl to be the limit of > the TCP_LINGER2. Maybe we can add a new sysctl to set the max of > TCP_LINGER2, but FIN-WAIT-2 timeout is usually no need to be too long > and 2 minutes are legal considering TCP specs. > > Changes in v3: > - Remove the new socket option and change the TCP_LINGER2 behavior so > that the timeout can be set to value between sysctl_tcp_fin_timeout > and 2 minutes. > > Changes in v2: > - Add int overflow check for the new socket option. > > Changes in v1: > - Add a new socket option to set timeout greater than > sysctl_tcp_fin_timeout. > > Signed-off-by: Cambda Zhu <cam...@linux.alibaba.com> Applied, thank you.