Lines Matching defs:summary

33 					struct rxrpc_ack_summary *summary)
35 summary->change = rxrpc_cong_no_change;
36 summary->in_flight = rxrpc_tx_in_flight(call);
39 summary->retrans_timeo = true;
40 call->cong_ssthresh = umax(summary->in_flight / 2, 2);
50 call->cong_cumul_acks += summary->nr_new_sacks;
51 call->cong_cumul_acks += summary->nr_new_hacks;
80 summary->change = rxrpc_cong_rtt_window_end;
90 if (summary->new_low_snack) {
91 summary->change = rxrpc_cong_new_low_nack;
102 summary->change = rxrpc_cong_begin_retransmission;
104 call->cong_ssthresh = umax(summary->in_flight / 2, 2);
108 summary->need_retransmit = true;
109 summary->in_fast_or_rto_recovery = true;
114 summary->in_fast_or_rto_recovery = true;
115 if (!summary->new_low_snack) {
116 if (summary->nr_new_sacks == 0)
120 summary->change = rxrpc_cong_retransmit_again;
122 summary->need_retransmit = true;
125 summary->change = rxrpc_cong_progress;
128 summary->exiting_fast_or_rto_recovery = true;
140 summary->change = rxrpc_cong_cleared_nacks;
153 trace_rxrpc_congest(call, summary);
157 summary->change = rxrpc_cong_saw_nack;
206 struct rxrpc_ack_summary *summary,
213 summary->acked_serial, summary->ack_serial,
222 struct rxrpc_ack_summary *summary)
236 summary->new_low_snack = true;
263 if (summary->acked_serial == tq->segment_serial[ix] &&
265 rxrpc_add_data_rtt_sample(call, summary, tq, ix);
270 rxrpc_input_rack_one(call, summary, tq, ix);
272 summary->tlp_probe_acked = true;
273 summary->nr_new_hacks++;
275 trace_rxrpc_rotate(call, tq, summary, seq, rxrpc_rotate_trace_hack);
279 trace_rxrpc_rotate(call, tq, summary, seq, rxrpc_rotate_trace_sack);
283 rxrpc_input_rack_one(call, summary, tq, ix);
285 summary->tlp_probe_acked = true;
286 summary->nr_new_hacks++;
288 trace_rxrpc_rotate(call, tq, summary, seq, rxrpc_rotate_trace_snak);
309 trace_rxrpc_rack_update(call, summary);
327 trace_rxrpc_rack_update(call, summary);
391 struct rxrpc_ack_summary summary = { 0 };
408 if (!rxrpc_rotate_tx_window(call, top, &summary)) {
871 struct rxrpc_ack_summary *summary,
875 if (summary->acked_serial == tq->segment_serial[ix])
876 return rxrpc_add_data_rtt_sample(call, summary, tq, ix);
883 struct rxrpc_ack_summary *summary,
917 summary->nr_new_sacks += a;
918 summary->nr_new_snacks += n;
931 summary->nr_new_sacks += a;
932 summary->nr_new_snacks += n;
935 summary->nr_new_snacks += new;
950 if (summary->acked_serial)
951 rxrpc_input_soft_rtt(call, summary, tq);
955 rxrpc_input_rack(call, summary, tq, new_acks);
960 summary->tlp_probe_acked = true;
973 struct rxrpc_ack_summary *summary,
1014 rxrpc_input_soft_ack_tq(call, summary, tq, extracted, RXRPC_NR_TXQUEUE,
1027 rxrpc_input_soft_ack_tq(call, summary, tq, extracted, nr_reported,
1038 summary->new_low_snack = true;
1041 _debug("summary A=%d+%d N=%d+%d",
1042 call->acks_nr_sacks, summary->nr_new_sacks,
1043 call->acks_nr_snacks, summary->nr_new_snacks);
1082 struct rxrpc_ack_summary summary = { 0 };
1092 summary.ack_serial = sp->hdr.serial;
1097 summary.acked_serial = sp->ack.acked_serial;
1098 summary.ack_reason = (sp->ack.reason < RXRPC_ACK__INVALID ?
1102 rxrpc_inc_stat(call->rxnet, stat_rx_acks[summary.ack_reason]);
1109 if (unlikely(summary.ack_reason == RXRPC_ACK_EXCEEDS_WINDOW) &&
1122 if (unlikely(summary.ack_reason == RXRPC_ACK_OUT_OF_SEQUENCE) &&
1134 trace_rxrpc_rx_discard_ack(call, summary.ack_serial, hard_ack, prev_pkt);
1148 if (summary.acked_serial) {
1149 switch (summary.ack_reason) {
1152 summary.acked_serial, summary.ack_serial,
1156 if (after(summary.acked_serial, call->acks_highest_serial))
1157 call->acks_highest_serial = summary.acked_serial;
1158 summary.rtt_sample_avail = true;
1190 if (rxrpc_rotate_tx_window(call, hard_ack, &summary)) {
1199 rxrpc_input_soft_acks(call, &summary, skb);
1205 rxrpc_propose_ping(call, summary.ack_serial,
1211 rxrpc_congestion_management(call, &summary);
1212 rxrpc_rack_detect_loss_and_arm_timer(call, &summary);
1213 rxrpc_tlp_process_ack(call, &summary);
1214 if (call->tlp_serial && after_eq(summary.acked_serial, call->tlp_serial))
1218 if (summary.ack_reason == RXRPC_ACK_PING)
1219 rxrpc_send_ACK(call, RXRPC_ACK_PING_RESPONSE, summary.ack_serial,
1222 rxrpc_send_ACK(call, RXRPC_ACK_REQUESTED, summary.ack_serial,
1231 struct rxrpc_ack_summary summary = { 0 };
1243 if (rxrpc_rotate_tx_window(call, call->tx_transmitted, &summary))