aboutsummaryrefslogtreecommitdiffstats
path: root/include/trace
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2016-09-23 08:58:55 -0400
committerDavid Howells <dhowells@redhat.com>2016-09-23 10:49:19 -0400
commitc6672e3fe4a641bf302d6309ab4d5ee55648e758 (patch)
treef82db3e6572fae4c20d0e83edd5e119928e75243 /include/trace
parent9c7ad434441da6b5d4ac878cac368fbdaec99b56 (diff)
rxrpc: Add a tracepoint to log which packets will be retransmitted
Add a tracepoint to log in rxrpc_resend() which packets will be retransmitted. Note that if a positive ACK comes in whilst we have dropped the lock to retransmit another packet, the actual retransmission may not happen, though some of the effects will (such as altering the congestion management). Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'include/trace')
-rw-r--r--include/trace/events/rxrpc.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/include/trace/events/rxrpc.h b/include/trace/events/rxrpc.h
index d67a8c6b085a..56475497043d 100644
--- a/include/trace/events/rxrpc.h
+++ b/include/trace/events/rxrpc.h
@@ -543,6 +543,33 @@ TRACE_EVENT(rxrpc_propose_ack,
543 rxrpc_propose_ack_outcomes[__entry->outcome]) 543 rxrpc_propose_ack_outcomes[__entry->outcome])
544 ); 544 );
545 545
546TRACE_EVENT(rxrpc_retransmit,
547 TP_PROTO(struct rxrpc_call *call, rxrpc_seq_t seq, u8 annotation,
548 s64 expiry),
549
550 TP_ARGS(call, seq, annotation, expiry),
551
552 TP_STRUCT__entry(
553 __field(struct rxrpc_call *, call )
554 __field(rxrpc_seq_t, seq )
555 __field(u8, annotation )
556 __field(s64, expiry )
557 ),
558
559 TP_fast_assign(
560 __entry->call = call;
561 __entry->seq = seq;
562 __entry->annotation = annotation;
563 __entry->expiry = expiry;
564 ),
565
566 TP_printk("c=%p q=%x a=%02x xp=%lld",
567 __entry->call,
568 __entry->seq,
569 __entry->annotation,
570 __entry->expiry)
571 );
572
546#endif /* _TRACE_RXRPC_H */ 573#endif /* _TRACE_RXRPC_H */
547 574
548/* This part must be outside protection */ 575/* This part must be outside protection */