Lines Matching refs:rs

79 			    struct rate_sample *rs)  in tcp_rate_skb_delivered()  argument
87 if (!rs->prior_delivered || in tcp_rate_skb_delivered()
88 after(scb->tx.delivered, rs->prior_delivered)) { in tcp_rate_skb_delivered()
89 rs->prior_delivered = scb->tx.delivered; in tcp_rate_skb_delivered()
90 rs->prior_mstamp = scb->tx.delivered_mstamp; in tcp_rate_skb_delivered()
91 rs->is_app_limited = scb->tx.is_app_limited; in tcp_rate_skb_delivered()
92 rs->is_retrans = scb->sacked & TCPCB_RETRANS; in tcp_rate_skb_delivered()
97 rs->interval_us = tcp_stamp_us_delta(tp->first_tx_mstamp, in tcp_rate_skb_delivered()
111 bool is_sack_reneg, struct rate_sample *rs) in tcp_rate_gen() argument
127 rs->acked_sacked = delivered; /* freshly ACKed or SACKed */ in tcp_rate_gen()
128 rs->losses = lost; /* freshly marked lost */ in tcp_rate_gen()
134 if (!rs->prior_mstamp || is_sack_reneg) { in tcp_rate_gen()
135 rs->delivered = -1; in tcp_rate_gen()
136 rs->interval_us = -1; in tcp_rate_gen()
139 rs->delivered = tp->delivered - rs->prior_delivered; in tcp_rate_gen()
146 snd_us = rs->interval_us; /* send phase */ in tcp_rate_gen()
148 rs->prior_mstamp); /* ack phase */ in tcp_rate_gen()
149 rs->interval_us = max(snd_us, ack_us); in tcp_rate_gen()
152 rs->snd_interval_us = snd_us; in tcp_rate_gen()
153 rs->rcv_interval_us = ack_us; in tcp_rate_gen()
162 if (unlikely(rs->interval_us < tcp_min_rtt(tp))) { in tcp_rate_gen()
163 if (!rs->is_retrans) in tcp_rate_gen()
165 rs->interval_us, rs->delivered, in tcp_rate_gen()
168 rs->interval_us = -1; in tcp_rate_gen()
173 if (!rs->is_app_limited || in tcp_rate_gen()
174 ((u64)rs->delivered * tp->rate_interval_us >= in tcp_rate_gen()
175 (u64)tp->rate_delivered * rs->interval_us)) { in tcp_rate_gen()
176 tp->rate_delivered = rs->delivered; in tcp_rate_gen()
177 tp->rate_interval_us = rs->interval_us; in tcp_rate_gen()
178 tp->rate_app_limited = rs->is_app_limited; in tcp_rate_gen()