The branch main has been updated by rrs:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=96eb0d90cd75c56517bef952a03240f82f525d2e

commit 96eb0d90cd75c56517bef952a03240f82f525d2e
Author:     Randall Stewart <[email protected]>
AuthorDate: 2023-06-28 15:18:47 +0000
Commit:     Randall Stewart <[email protected]>
CommitDate: 2023-06-28 15:18:47 +0000

    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
---
 sys/conf/options | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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

Reply via email to