Lines Matching full:ack

79  * Fill out an ACK packet.
101 txb->ack.firstPacket = htonl(window); in rxrpc_fill_out_ack()
102 txb->ack.nAcks = wtop - window; in rxrpc_fill_out_ack()
106 to = min_t(unsigned int, txb->ack.nAcks, RXRPC_SACK_SIZE); in rxrpc_fill_out_ack()
108 if (sack + txb->ack.nAcks <= RXRPC_SACK_SIZE) { in rxrpc_fill_out_ack()
109 memcpy(txb->acks, call->ackr_sack_table + sack, txb->ack.nAcks); in rxrpc_fill_out_ack()
118 pr_warn("ack window backward %x %x", window, wtop); in rxrpc_fill_out_ack()
119 } else if (txb->ack.reason == RXRPC_ACK_DELAY) { in rxrpc_fill_out_ack()
120 txb->ack.reason = RXRPC_ACK_IDLE; in rxrpc_fill_out_ack()
138 return txb->ack.nAcks + 3 + sizeof(trailer); in rxrpc_fill_out_ack()
185 * Transmit an ACK packet.
208 if (txb->ack.reason == RXRPC_ACK_PING) in rxrpc_send_ack_packet()
216 iov[0].iov_len = sizeof(txb->wire) + sizeof(txb->ack) + n; in rxrpc_send_ack_packet()
222 ntohl(txb->ack.firstPacket), in rxrpc_send_ack_packet()
223 ntohl(txb->ack.serial), txb->ack.reason, txb->ack.nAcks, in rxrpc_send_ack_packet()
226 if (txb->ack.reason == RXRPC_ACK_PING) in rxrpc_send_ack_packet()
232 txb->ack.previousPacket = htonl(call->rx_highest_seq); in rxrpc_send_ack_packet()
270 * hard-ACK'd all of its request data. After that point, we're not in rxrpc_send_abort_packet()
355 /* If our RTT cache needs working on, request an ACK. Also request in rxrpc_send_data_packet()
358 * However, we mustn't request an ACK on the last reply packet of a in rxrpc_send_data_packet()
359 * service call, lest OpenAFS incorrectly send us an ACK with some in rxrpc_send_data_packet()
360 * soft-ACKs in it and then never follow up with a proper hard ACK. in rxrpc_send_data_packet()
404 * yet. However, this can race as we can receive an ACK before we get in rxrpc_send_data_packet()
405 * to this point. But, OTOH, if we won't get an ACK mentioning this in rxrpc_send_data_packet()