Update repository to the state of the latest kernel patch.

This commit is contained in:
Lukas Prause
2026-09-16 15:22:54 +02:00
parent b355d1eb50
commit 64d0e54f87
2 changed files with 679 additions and 420 deletions
+551 -308
View File
File diff suppressed because it is too large Load Diff
+22 -6
View File
@@ -11,6 +11,7 @@
enum roccet_state { enum roccet_state {
LAUNCH, LAUNCH,
ORBITER, ORBITER,
RTT_PROBE_ENTER,
RTT_PROBE, RTT_PROBE,
RTT_PROBE_REFILL, RTT_PROBE_REFILL,
DRAIN DRAIN
@@ -37,11 +38,15 @@ struct roccettcp {
u32 roccet_last_event_time_us; /* The last time ROCCET was triggered */ u32 roccet_last_event_time_us; /* The last time ROCCET was triggered */
u32 curr_min_rtt; /* The current observed minRTT */ u32 curr_min_rtt; /* The current observed minRTT */
u32 next_min_rtt_probe; /* Next time to probe the minRTT */ u32 next_min_rtt_probe; /* Next time to probe the minRTT */
u32 probe_min_rtt_until; /* End of minRTT probing period */ u32 probe_min_rtt_until; /* End of minRTT probing period.
u32 refill_until; /* End of pipe refill after minRTT probe */ * Set while in RTT_PROBE states
u32 cwnd_before_min_rtt_probe; /* cwnd before min RTT probeing */ */
u32 refill_until; /* End of pipe refill after minRTT probe.
* Set while in RTT_PROBE states
*/
u32 cwnd_before_min_rtt_probe; /* cwnd before min RTT probing. */
u32 curr_srrtt; /* srRTT calculated based on the latest ACK */ u32 curr_srrtt; /* srRTT calculated based on the latest ACK */
u32 next_srrtt_check; /* Next check for srRTT */ u32 next_srrtt_check_ts; /* Next check for srRTT */
u32 last_rtt; /* sample rtt of previous round. u32 last_rtt; /* sample rtt of previous round.
* Used for jitter calculation * Used for jitter calculation
*/ */
@@ -54,8 +59,19 @@ struct roccettcp {
u16 ack_rate_curr_rate; /* Current ACK-rate */ u16 ack_rate_curr_rate; /* Current ACK-rate */
u16 ack_rate_cnt; /* Used for counting acks */ u16 ack_rate_cnt; /* Used for counting acks */
bool ece_received; /* Set to true if an ECE bit was received */ enum roccet_state state : 3; /* Current operating state of roccet */
enum roccet_state state; /* State in which roccet currently operates */ bool was_idle : 1; /* Tracks whether the connection was idle
* (had no in-flight packets)
*/
bool initial_limit_reached: 1; /* Set to true after the connection
* initially gets cwnd-limited
*/
bool is_in_initial_launch: 1; /* true if the connection is in
* the initial launch phase.
*/
u32 ack_carry_over; /* Used to carry over leftover acks from
* LAUNCH to ORBITER
*/
}; };
#endif /* __TCP_ROCCET_H */ #endif /* __TCP_ROCCET_H */