aboutsummaryrefslogtreecommitdiff
path: root/sys/conf/options
diff options
context:
space:
mode:
authorRandall Stewart <rrs@FreeBSD.org>2023-06-28 15:18:47 +0000
committerRandall Stewart <rrs@FreeBSD.org>2023-06-28 15:18:47 +0000
commit96eb0d90cd75c56517bef952a03240f82f525d2e (patch)
tree50a8bfd22023cb022d0cde623397662e1973e3c1 /sys/conf/options
parent0cd2d88d8d0f808d331a0a04743b98cb082d653e (diff)
downloadsrc-96eb0d90cd75c56517bef952a03240f82f525d2e.tar.gz
src-96eb0d90cd75c56517bef952a03240f82f525d2e.zip
tcp: With the right options in the kernel cc_cubic stays in slowstart always.
So this is a subtle bug I have found in cubic. If you compile a number of options into the kernel (accounting and tracking) then all of the kernel code "knows" the proper offset of t_rttupdatecnt however cubic does not see the options (and htcp too) and thus will look for the count in the wrong place seeing 0. Which then means it never builds an MIN RTT which then means it always hangs in slowstart. The solution is to put all options that effect tcpcb size into the opt_global.h so that the kernel has a consistent view of the tcpcb size. Reviewed by: tuexen, rscheff Sponsored by: Netflix Inc Differential Revision:https://reviews.freebsd.org/D40761
Diffstat (limited to 'sys/conf/options')
-rw-r--r--sys/conf/options2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/conf/options b/sys/conf/options
index 7a34fa0f7333..6f1a488bf33f 100644
--- a/sys/conf/options
+++ b/sys/conf/options
@@ -229,7 +229,7 @@ SYSVSHM opt_sysvipc.h
SW_WATCHDOG opt_watchdog.h
TCPHPTS opt_inet.h
TCP_REQUEST_TRK opt_global.h
-TCP_ACCOUNTING opt_inet.h
+TCP_ACCOUNTING opt_global.h
#
# TCP SaD Detection is an experimental Sack attack Detection (SaD)
# algorithm that uses "normal" behaviour with SACK's to detect