]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
tcp: virtualise net.inet.tcp.msl sysctl.
authorAlexander V. Chernikov <melifaro@FreeBSD.org>
Sat, 4 Dec 2021 22:02:44 +0000 (22:02 +0000)
committerAlexander V. Chernikov <melifaro@FreeBSD.org>
Mon, 28 Mar 2022 08:46:13 +0000 (08:46 +0000)
commit057793e63771816315cb54869c067b1c2b2bb4dc
tree68a78a1c88b3c078ddd7d86f68be15b70821ddc9
parent6663718bb49635deac3f5dc55fa6f0f7cba593ba
tcp: virtualise net.inet.tcp.msl sysctl.

VNET teardown waits 2*MSL (60 seconds by default) before expiring
 tcp PCBs. These PCBs holds references to nexthops, which, in turn,
 reference ifnets. This chain results in VNET interfaces being destroyed
 and moved to default VNET only after 60 seconds.
Allow tcp_msl to be set in jail by virtualising net.inet.tcp.msl sysctl,
 permitting more predictable VNET tests outcomes.

MFC after: 1 week
Reviewed by: glebius
Differential Revision: https://reviews.freebsd.org/D33270

(cherry picked from commit c2c8e360d8c0b8712158d334686d88f052aef819)
sys/netinet/tcp_subr.c
sys/netinet/tcp_timer.c
sys/netinet/tcp_timer.h
sys/netinet/tcp_timewait.c