From nobody Tue Jun 17 15:54:34 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4bMBJV29Kcz5yTpf; Tue, 17 Jun 2025 15:54:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4bMBJV1Rcxz3sKt; Tue, 17 Jun 2025 15:54:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1750175674; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d2QCbhzJYkAxhPPp1VpkVBYW2c2ptSj7yvAFrri4txk=; b=eH1GRUHNKfIvL3vgO1fHKlMkgeCyffLlgvoj5Pe29evqUj0Gax4VTRuhAWmTKTmpfx3Xfy xAPBnHNLvIJp+DQbsYbEDjptK3TyWy5cNC5ggDRofPlttMsf7/NsdaKMKvP87UvNrtbrKY ez2RbwT8n4F0EEqjOh/34DnM0WvKM+hQJhgEyFo8gJMeg6x2pSLnebDQaEHx0HRnMrQG8q WAhdl4Ttg3Y89D8j3L1w0C9Fl4s1S3OHUM6NPSXkvkhnhJoLF09xjF6iserciMyapuVt42 QogbyHmXRAz6Wkh9yQ6VjJF2eamQVwMRunrEUA68XAo5veZ78KRvXupFREDbnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1750175674; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d2QCbhzJYkAxhPPp1VpkVBYW2c2ptSj7yvAFrri4txk=; b=rcVO0CvZzrFVoQz+UXSDzAklTrigUfNGd3XmBHdx4KJwaQVRkXwPCC/Vn0OEiruBIINXZD DTEwWf2MDEXH4Xw+27RhM2Glr9de0zGbp84+CeVkzIinT80vQHTEfyDngYSiR4wk7EdkVV 8ONsf0O/eRDXkkb/HwruK3iZbQhlMblI/mobtVQpLQj2yJ5a6X2c/bdhShagk9eDlse1Ot LEmh6UPvZR4jMEAf+jFSai5sUyvikm8gQqKUuB/SfUCTycgWw7NpfSXhWvT82+mrp2MBOr 2iwKxI9GiJBXoQ7kK9L7w+Mmvm1eeXrsnwQKQX7GO2WOSSo2RnGWyIU1L9tORg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1750175674; a=rsa-sha256; cv=none; b=s/ML3lKbUZ7NB0jqw23ECUKlcx5Wa/tM6MgsJ2oNdke8cqDhiD8m5CRbQ0YDi/Urpw3nPJ cdfs7DdwSJ4R3IznjAuYuFBLVYe85QuHIsASaCllnKXye4C/yfdw/+dHcnU4fRabE+J68Z VXKkLtbn1eDaQtWrtGqnE8M23sBVfRxPDXvXshBt9NEUDmjlbu5JtvFlq7CrhUCDepxgdx 70Wqtqa2qHk8AOqMkBbxC11+W0dbPCoM/tJp8VX17Qm76YzMXUwf4fDReR5g64MM4hnO4p lYdZBCi4iMCiREKVUB81U0tCf6+s1W474PFMw7icTJPCRiZIWvHI1PfhHAeNqQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4bMBJV11HRzqJv; Tue, 17 Jun 2025 15:54:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 55HFsYOE038352; Tue, 17 Jun 2025 15:54:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 55HFsYsk038349; Tue, 17 Jun 2025 15:54:34 GMT (envelope-from git) Date: Tue, 17 Jun 2025 15:54:34 GMT Message-Id: <202506171554.55HFsYsk038349@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: faa6aa7723aa - main - tcp: remove CTLFLAG_NEEDGIANT from sysctl(9) handlers related to timers List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: faa6aa7723aa1af0aa0128acde2814563b4372d3 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=faa6aa7723aa1af0aa0128acde2814563b4372d3 commit faa6aa7723aa1af0aa0128acde2814563b4372d3 Author: Gleb Smirnoff AuthorDate: 2025-06-17 15:52:18 +0000 Commit: Gleb Smirnoff CommitDate: 2025-06-17 15:54:18 +0000 tcp: remove CTLFLAG_NEEDGIANT from sysctl(9) handlers related to timers They all just modify a global word sized variable via sysctl_msec_to_ticks(), which is wrapper around sysctl_handle_int(). Note, they all were marked with CTLFLAG_NEEDGIANT in 7029da5c36f2 merely because it was not obvious whether they are mpsafe or not. Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D50890 --- sys/netinet/tcp_timer.c | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/sys/netinet/tcp_timer.c b/sys/netinet/tcp_timer.c index 4d8dafaec31d..f1d864d33bd6 100644 --- a/sys/netinet/tcp_timer.c +++ b/sys/netinet/tcp_timer.c @@ -74,39 +74,33 @@ #include int tcp_persmin; -SYSCTL_PROC(_net_inet_tcp, OID_AUTO, persmin, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, OID_AUTO, persmin, CTLTYPE_INT | CTLFLAG_RW, &tcp_persmin, 0, sysctl_msec_to_ticks, "I", "minimum persistence interval"); int tcp_persmax; -SYSCTL_PROC(_net_inet_tcp, OID_AUTO, persmax, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, OID_AUTO, persmax, CTLTYPE_INT | CTLFLAG_RW, &tcp_persmax, 0, sysctl_msec_to_ticks, "I", "maximum persistence interval"); int tcp_keepinit; -SYSCTL_PROC(_net_inet_tcp, TCPCTL_KEEPINIT, keepinit, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, TCPCTL_KEEPINIT, keepinit, CTLTYPE_INT | CTLFLAG_RW, &tcp_keepinit, 0, sysctl_msec_to_ticks, "I", "time to establish connection"); int tcp_keepidle; -SYSCTL_PROC(_net_inet_tcp, TCPCTL_KEEPIDLE, keepidle, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, TCPCTL_KEEPIDLE, keepidle, CTLTYPE_INT | CTLFLAG_RW, &tcp_keepidle, 0, sysctl_msec_to_ticks, "I", "time before keepalive probes begin"); int tcp_keepintvl; SYSCTL_PROC(_net_inet_tcp, TCPCTL_KEEPINTVL, keepintvl, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - &tcp_keepintvl, 0, sysctl_msec_to_ticks, "I", + CTLTYPE_INT | CTLFLAG_RW, &tcp_keepintvl, 0, sysctl_msec_to_ticks, "I", "time between keepalive probes"); int tcp_delacktime; SYSCTL_PROC(_net_inet_tcp, TCPCTL_DELACKTIME, delacktime, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, - &tcp_delacktime, 0, sysctl_msec_to_ticks, "I", + CTLTYPE_INT | CTLFLAG_RW, &tcp_delacktime, 0, sysctl_msec_to_ticks, "I", "Time before a delayed ACK is sent"); VNET_DEFINE(int, tcp_msl); @@ -116,20 +110,17 @@ SYSCTL_PROC(_net_inet_tcp, OID_AUTO, msl, "Maximum segment lifetime"); int tcp_rexmit_initial; -SYSCTL_PROC(_net_inet_tcp, OID_AUTO, rexmit_initial, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, OID_AUTO, rexmit_initial, CTLTYPE_INT | CTLFLAG_RW, &tcp_rexmit_initial, 0, sysctl_msec_to_ticks, "I", "Initial Retransmission Timeout"); int tcp_rexmit_min; -SYSCTL_PROC(_net_inet_tcp, OID_AUTO, rexmit_min, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, OID_AUTO, rexmit_min, CTLTYPE_INT | CTLFLAG_RW, &tcp_rexmit_min, 0, sysctl_msec_to_ticks, "I", "Minimum Retransmission Timeout"); int tcp_rexmit_slop; -SYSCTL_PROC(_net_inet_tcp, OID_AUTO, rexmit_slop, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, OID_AUTO, rexmit_slop, CTLTYPE_INT | CTLFLAG_RW, &tcp_rexmit_slop, 0, sysctl_msec_to_ticks, "I", "Retransmission Timer Slop"); @@ -144,8 +135,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, fast_finwait2_recycle, CTLFLAG_RW, "Recycle closed FIN_WAIT_2 connections faster"); int tcp_finwait2_timeout; -SYSCTL_PROC(_net_inet_tcp, OID_AUTO, finwait2_timeout, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, OID_AUTO, finwait2_timeout, CTLTYPE_INT | CTLFLAG_RW, &tcp_finwait2_timeout, 0, sysctl_msec_to_ticks, "I", "FIN-WAIT2 timeout"); @@ -162,8 +152,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, rexmit_drop_options, CTLFLAG_RW, "Drop TCP options from 3rd and later retransmitted SYN"); int tcp_maxunacktime = TCPTV_MAXUNACKTIME; -SYSCTL_PROC(_net_inet_tcp, OID_AUTO, maxunacktime, - CTLTYPE_INT|CTLFLAG_RW | CTLFLAG_NEEDGIANT, +SYSCTL_PROC(_net_inet_tcp, OID_AUTO, maxunacktime, CTLTYPE_INT | CTLFLAG_RW, &tcp_maxunacktime, 0, sysctl_msec_to_ticks, "I", "Maximum time (in ms) that a session can linger without making progress");