]> 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 15:24:28 +0000 (15:24 +0000)
commitd64a952f8d8ad935c20db327d68d5db78b4bbea8
tree545d0abf03c744477e49969a6aa28dcc0ef6134b
parentbf2378688d276903dc63437758af7962dad2ccd5
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
Approved by: re(gjb)
Differential Revision: https://reviews.freebsd.org/D33270

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