Date: Wed, 5 Feb 2025 20:28:18 GMT From: Michael Tuexen <tuexen@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: 1d39f58d735c - stable/13 - TCP BBR: fix getsockopt() for TCP_BBR_USEDEL_RATE Message-ID: <202502052028.515KSI2x045702@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=1d39f58d735c64e5878f4bfb1ec53397bd5008c8 commit 1d39f58d735c64e5878f4bfb1ec53397bd5008c8 Author: Michael Tuexen <tuexen@FreeBSD.org> AuthorDate: 2024-12-31 16:29:04 +0000 Commit: Michael Tuexen <tuexen@FreeBSD.org> CommitDate: 2025-02-05 20:13:25 +0000 TCP BBR: fix getsockopt() for TCP_BBR_USEDEL_RATE Actually implement the IPPROTO_TCP-level socket option TCP_BBR_USEDEL_RATE. Reviewed by: rrs CID: 1523813 CID: 1523814 Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D48261 (cherry picked from commit b47dcb4b1ff16e6af2e07798f6fe06580b4eddf0) --- sys/netinet/tcp_stacks/bbr.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 7faeadabf203..1a67bbbdd08f 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -14643,6 +14643,7 @@ static int bbr_get_sockopt(struct socket *so, struct sockopt *sopt, struct inpcb *inp, struct tcpcb *tp, struct tcp_bbr *bbr) { + uint64_t loptval; int32_t error, optval; /* @@ -14698,7 +14699,7 @@ bbr_get_sockopt(struct socket *so, struct sockopt *sopt, optval = bbr->rc_loss_exit; break; case TCP_BBR_USEDEL_RATE: - error = EINVAL; + loptval = get_filter_value(&bbr->r_ctl.rc_delrate); break; case TCP_BBR_MIN_RTO: optval = bbr->r_ctl.rc_min_rto_ms; @@ -14782,7 +14783,10 @@ bbr_get_sockopt(struct socket *so, struct sockopt *sopt, break; } INP_WUNLOCK(inp); - error = sooptcopyout(sopt, &optval, sizeof optval); + if (sopt->sopt_name == TCP_BBR_USEDEL_RATE) + error = sooptcopyout(sopt, &loptval, sizeof loptval); + else + error = sooptcopyout(sopt, &optval, sizeof optval); return (error); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202502052028.515KSI2x045702>