Lines Matching full:summary
23 struct rxrpc_ack_summary *summary, in rxrpc_congestion_management() argument
31 summary->flight_size = in rxrpc_congestion_management()
32 (call->tx_top - call->acks_hard_ack) - summary->nr_acks; in rxrpc_congestion_management()
35 summary->retrans_timeo = true; in rxrpc_congestion_management()
37 summary->flight_size / 2, 2); in rxrpc_congestion_management()
47 cumulative_acks += summary->nr_new_acks; in rxrpc_congestion_management()
51 summary->cwnd = call->cong_cwnd; in rxrpc_congestion_management()
52 summary->ssthresh = call->cong_ssthresh; in rxrpc_congestion_management()
53 summary->cumulative_acks = cumulative_acks; in rxrpc_congestion_management()
54 summary->dup_acks = call->cong_dup_acks; in rxrpc_congestion_management()
58 if (summary->saw_nacks) in rxrpc_congestion_management()
60 if (summary->cumulative_acks > 0) in rxrpc_congestion_management()
69 if (summary->saw_nacks) in rxrpc_congestion_management()
88 if (!summary->saw_nacks) in rxrpc_congestion_management()
91 if (summary->new_low_nack) { in rxrpc_congestion_management()
106 summary->flight_size / 2, 2); in rxrpc_congestion_management()
114 if (!summary->new_low_nack) { in rxrpc_congestion_management()
115 if (summary->nr_new_acks == 0) in rxrpc_congestion_management()
126 if (!summary->saw_nacks) in rxrpc_congestion_management()
152 summary->mode = call->cong_mode; in rxrpc_congestion_management()
153 trace_rxrpc_congest(call, summary, acked_serial, change); in rxrpc_congestion_management()
169 summary->nr_acks != call->tx_top - call->acks_hard_ack) { in rxrpc_congestion_management()
207 struct rxrpc_ack_summary *summary) in rxrpc_rotate_tx_window() argument
231 summary->new_low_nack = true; in rxrpc_rotate_tx_window()
290 struct rxrpc_ack_summary summary = { 0 }; in rxrpc_receiving_reply() local
303 if (!rxrpc_rotate_tx_window(call, top, &summary)) { in rxrpc_receiving_reply()
712 struct rxrpc_ack_summary *summary, in rxrpc_input_check_prev_ack() argument
723 summary->nr_new_acks += sp->nr_nacks; in rxrpc_input_check_prev_ack()
724 summary->nr_new_acks += seq - (old_seq + sp->nr_acks); in rxrpc_input_check_prev_ack()
725 summary->nr_retained_nacks = 0; in rxrpc_input_check_prev_ack()
727 summary->nr_retained_nacks = sp->nr_nacks; in rxrpc_input_check_prev_ack()
738 summary->nr_new_acks += new_acks; in rxrpc_input_check_prev_ack()
739 summary->nr_retained_nacks = retained_nacks; in rxrpc_input_check_prev_ack()
755 struct rxrpc_ack_summary *summary, in rxrpc_input_soft_acks() argument
767 summary->nr_acks++; in rxrpc_input_soft_acks()
769 summary->nr_new_acks++; in rxrpc_input_soft_acks()
771 summary->saw_nacks = true; in rxrpc_input_soft_acks()
776 summary->nr_new_nacks++; in rxrpc_input_soft_acks()
788 summary->new_low_nack = true; in rxrpc_input_soft_acks()
796 if (old_nacks < summary->nr_retained_nacks) in rxrpc_input_soft_acks()
797 summary->nr_new_acks += summary->nr_retained_nacks - old_nacks; in rxrpc_input_soft_acks()
798 summary->nr_retained_nacks = old_nacks; in rxrpc_input_soft_acks()
837 struct rxrpc_ack_summary summary = { 0 }; in rxrpc_input_ack() local
860 summary.ack_reason = (ack.reason < RXRPC_ACK__INVALID ? in rxrpc_input_ack()
865 summary.ack_reason, nr_acks); in rxrpc_input_ack()
930 since = rxrpc_input_check_prev_ack(call, &summary, first_soft_ack); in rxrpc_input_ack()
934 summary.nr_new_acks = first_soft_ack - call->acks_first_seq; in rxrpc_input_ack()
977 if (rxrpc_rotate_tx_window(call, hard_ack, &summary)) { in rxrpc_input_ack()
986 rxrpc_input_soft_acks(call, &summary, skb, first_soft_ack, since); in rxrpc_input_ack()
992 summary.nr_acks == call->tx_top - hard_ack && in rxrpc_input_ack()
997 rxrpc_congestion_management(call, skb, &summary, acked_serial); in rxrpc_input_ack()
1013 struct rxrpc_ack_summary summary = { 0 }; in rxrpc_input_ackall() local
1015 if (rxrpc_rotate_tx_window(call, call->tx_top, &summary)) in rxrpc_input_ackall()