mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-28 16:52:18 +00:00
rxrpc: Add a reason indicator to the tx_ack tracepoint
Record the reason for the transmission of an ACK in the rxrpc_tx_ack tracepoint, and not just in the rxrpc_propose_ack tracepoint. Signed-off-by: David Howells <dhowells@redhat.com> cc: Marc Dionne <marc.dionne@auristor.com> cc: linux-afs@lists.infradead.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
372d12d191
commit
b509934094
@ -375,6 +375,7 @@
|
||||
EM(rxrpc_propose_ack_processing_op, "ProcOp ") \
|
||||
EM(rxrpc_propose_ack_respond_to_ack, "Rsp2Ack") \
|
||||
EM(rxrpc_propose_ack_respond_to_ping, "Rsp2Png") \
|
||||
EM(rxrpc_propose_ack_retransmit, "Retrans") \
|
||||
EM(rxrpc_propose_ack_retry_tx, "RetryTx") \
|
||||
EM(rxrpc_propose_ack_rotate_rx, "RxAck ") \
|
||||
EM(rxrpc_propose_ack_rx_idle, "RxIdle ") \
|
||||
@ -1267,9 +1268,10 @@ TRACE_EVENT(rxrpc_tx_data,
|
||||
TRACE_EVENT(rxrpc_tx_ack,
|
||||
TP_PROTO(unsigned int call, rxrpc_serial_t serial,
|
||||
rxrpc_seq_t ack_first, rxrpc_serial_t ack_serial,
|
||||
u8 reason, u8 n_acks, u16 rwind),
|
||||
u8 reason, u8 n_acks, u16 rwind,
|
||||
enum rxrpc_propose_ack_trace trace),
|
||||
|
||||
TP_ARGS(call, serial, ack_first, ack_serial, reason, n_acks, rwind),
|
||||
TP_ARGS(call, serial, ack_first, ack_serial, reason, n_acks, rwind, trace),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__field(unsigned int, call)
|
||||
@ -1279,6 +1281,7 @@ TRACE_EVENT(rxrpc_tx_ack,
|
||||
__field(u8, reason)
|
||||
__field(u8, n_acks)
|
||||
__field(u16, rwind)
|
||||
__field(enum rxrpc_propose_ack_trace, trace)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
@ -1289,16 +1292,18 @@ TRACE_EVENT(rxrpc_tx_ack,
|
||||
__entry->reason = reason;
|
||||
__entry->n_acks = n_acks;
|
||||
__entry->rwind = rwind;
|
||||
__entry->trace = trace;
|
||||
),
|
||||
|
||||
TP_printk(" c=%08x ACK %08x %s f=%08x r=%08x n=%u rw=%u",
|
||||
TP_printk(" c=%08x ACK %08x %s f=%08x r=%08x n=%u rw=%u %s",
|
||||
__entry->call,
|
||||
__entry->serial,
|
||||
__print_symbolic(__entry->reason, rxrpc_ack_names),
|
||||
__entry->ack_first,
|
||||
__entry->ack_serial,
|
||||
__entry->n_acks,
|
||||
__entry->rwind)
|
||||
__entry->rwind,
|
||||
__print_symbolic(__entry->trace, rxrpc_propose_ack_traces))
|
||||
);
|
||||
|
||||
TRACE_EVENT(rxrpc_receive,
|
||||
|
@ -177,7 +177,8 @@ void rxrpc_conn_retransmit_call(struct rxrpc_connection *conn,
|
||||
trace_rxrpc_tx_ack(chan->call_debug_id, serial,
|
||||
ntohl(pkt.ack.firstPacket),
|
||||
ntohl(pkt.ack.serial),
|
||||
pkt.ack.reason, 0, rxrpc_rx_window_size);
|
||||
pkt.ack.reason, 0, rxrpc_rx_window_size,
|
||||
rxrpc_propose_ack_retransmit);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -267,7 +267,7 @@ static void rxrpc_send_ack_packet(struct rxrpc_call *call, int nr_kv, size_t len
|
||||
trace_rxrpc_tx_ack(call->debug_id, serial,
|
||||
ntohl(ack->firstPacket),
|
||||
ntohl(ack->serial), ack->reason, ack->nAcks,
|
||||
ntohl(trailer->rwind));
|
||||
ntohl(trailer->rwind), why);
|
||||
|
||||
rxrpc_inc_stat(call->rxnet, stat_tx_ack_send);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user