Lines Matching +full:lock +full:- +full:state
1 /*-
2 * Copyright (c) 2016-2020 Netflix, Inc.
29 #define BBR_INITIAL_RTO 1000000 /* 1 second in micro-seconds */
39 #define BBR_TLP 0x0080 /* segment sent as tail-loss-probe */
43 * totaled into bbr->rc_ctl.rc_lost
70 uint8_t r_rtr_cnt:4, /* Retran count, index this -1 to get time
78 r_is_smallmap:1,/* Was logged as a small-map send-map item */
80 r_bbr_state:5; /* The BBR state at send */
118 * exit from probe-rtt */
230 uint64_t sb_acc; /* For out/ack or t-o */
311 * with the time it was sent. During non-recovery sending we
321 * To calculate pipe we simply take (snd_max - snd_una) + rc_holes_rxt
331 #define BBR_NUM_RTTS_FOR_DEL_LIMIT 8 /* How many pkt-rtts do we keep
333 #define BBR_NUM_RTTS_FOR_GOOG_DEL_LIMIT 10 /* How many pkt-rtts do we keep
357 /* Substate defines for STATE == PROBE_BW */
358 #define BBR_SUB_GAIN 0 /* State 0 where we are 5/4 BBR_UNIT */
359 #define BBR_SUB_DRAIN 1 /* State 1 where we are at 3/4 BBR_UNIT */
360 #define BBR_SUB_LEVEL1 2 /* State 1 first BBR_UNIT */
361 #define BBR_SUB_LEVEL2 3 /* State 2nd BBR_UNIT */
362 #define BBR_SUB_LEVEL3 4 /* State 3rd BBR_UNIT */
363 #define BBR_SUB_LEVEL4 5 /* State 4th BBR_UNIT */
364 #define BBR_SUB_LEVEL5 6 /* State 5th BBR_UNIT */
365 #define BBR_SUB_LEVEL6 7 /* State last BBR_UNIT */
523 struct bbr_head rc_map; /* List of all segments Lock(a) */
524 struct bbr_head rc_tmap; /* List in transmit order Lock(a) */
527 uint32_t rc_last_delay_val; /* How much we expect to delay Lock(a) */
528 uint32_t rc_bbr_hptsi_gain:16, /* Current hptsi gain Lock(a) */
531 uint32_t rc_delivered; /* BRR delivered amount Lock(a) */
543 struct bbr_head rc_free; /* List of Free map entries Lock(a) */
547 uint32_t rc_target_at_state; /* Target for a state */
550 * Lock(a) */
556 * probe-rtt qualified */
557 uint32_t rc_pace_max_segs:17, /* How much in any single TSO we send Lock(a) */
560 uint32_t rc_rtt_shrinks; /* Time of last rtt shrinkage Lock(a) */
563 uint32_t rc_rcv_epoch_start; /* Start time of the Epoch Lock(a) */
570 * pkt-epoch */
571 uint32_t r_measurement_count; /* count of measurement applied lock(a) */
573 uint32_t rc_last_tlp_seq; /* Last tlp sequence Lock(a) */
574 uint16_t rc_reorder_shift; /* Socket option value Lock(a) */
575 uint16_t rc_pkt_delay; /* Socket option value Lock(a) */
578 * Lock(a) */
580 * retransmit at Lock(a) */
582 uint32_t rc_sacked; /* Tot sacked on scoreboard Lock(a) */
583 uint32_t rc_holes_rxt; /* Tot retraned from scoreboard Lock(a) */
585 uint32_t rc_reorder_ts; /* Last time we saw reordering Lock(a) */
587 /*- ---
612 uint32_t rc_lt_epoch_use; /* When we started lt-bw use Lock(a) */
614 uint32_t rc_recovery_start; /* Time we start recovery Lock(a) */
615 uint32_t rc_lt_del; /* Delivered at lt bw sampling start Lock(a) */
618 * Lock(a) */
624 * Lock(a) */
627 uint32_t rc_rcvtime; /* When we last received data Lock(a) */
635 * Lock(a) */
646 * probertt Lock(a) */
647 uint32_t rc_lt_time; /* Time of lt sampling start Lock(a) */
652 uint64_t rc_lt_bw; /* LT bw calculated Lock(a) */
654 * saw to check the 20% gain Lock(a) */
656 uint32_t rc_bbr_cwnd_gain; /* Current cwnd gain Lock(a) */
657 uint32_t rc_pkt_epoch_loss_rate; /* pkt-epoch loss rate */
659 uint32_t rc_saved_cwnd; /* Saved cwnd during Probe-rtt drain Lock(a) */
662 uint32_t rc_lost; /* Number of bytes lost Lock(a) */
666 * Lock(a) */
669 uint32_t rc_min_to; /* Socket option value Lock(a) */
670 uint32_t rc_initial_hptsi_bw; /* Our initial startup bw Lock(a) */
673 * enter a state */
688 uint32_t rc_reorder_fade; /* Socket option value Lock(a) */
713 uint32_t rc_pe_of_prtt; /* PE we went into probe-rtt */
717 * rc_last_tlp_seq Lock(a) */
736 int32_t, int32_t, uint32_t, int32_t, int32_t, uint8_t); /* Lock(a) */
737 struct tcpcb *rc_tp; /* The tcpcb Lock(a) */
738 struct inpcb *rc_inp; /* The inpcb Lock(a) */
752 uint8_t bbr_timer_src:4, /* Used for debugging Lock(a) */
779 uint8_t r_state:4, /* Current bbr state Lock(a) */
784 uint8_t r_timer_override:1, /* pacer override Lock(a) 0/1 */
791 uint8_t rc_bbr_state:3, /* What is the major BBR state */
792 rc_bbr_substate:3, /* For probeBW state */
796 uint8_t rc_tlp_threshold; /* Socket option value Lock(a) */