diff options
author | David Howells <dhowells@redhat.com> | 2016-09-23 16:22:36 +0200 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2016-09-23 16:49:19 +0200 |
commit | fc7ab6d29a3af0b7f6df7c095509378c8caf85b5 (patch) | |
tree | c24fa070339e72ef88edce50a9f3f64f01818b7c /net/rxrpc/call_event.c | |
parent | rxrpc: Don't call the tx_ack tracepoint if don't generate an ACK (diff) | |
download | linux-fc7ab6d29a3af0b7f6df7c095509378c8caf85b5.tar.xz linux-fc7ab6d29a3af0b7f6df7c095509378c8caf85b5.zip |
rxrpc: Add a tracepoint for the call timer
Add a tracepoint to log call timer initiation, setting and expiry.
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'net/rxrpc/call_event.c')
-rw-r--r-- | net/rxrpc/call_event.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/rxrpc/call_event.c b/net/rxrpc/call_event.c index 8bc5c8e37ab4..90e970ba048a 100644 --- a/net/rxrpc/call_event.c +++ b/net/rxrpc/call_event.c @@ -24,7 +24,7 @@ /* * Set the timer */ -void rxrpc_set_timer(struct rxrpc_call *call) +void rxrpc_set_timer(struct rxrpc_call *call, enum rxrpc_timer_trace why) { unsigned long t, now = jiffies; @@ -45,6 +45,7 @@ void rxrpc_set_timer(struct rxrpc_call *call) if (call->timer.expires != t || !timer_pending(&call->timer)) { mod_timer(&call->timer, t); + trace_rxrpc_timer(call, why, now); } } @@ -120,7 +121,7 @@ static void __rxrpc_propose_ACK(struct rxrpc_call *call, u8 ack_reason, _debug("deferred ACK %ld < %ld", expiry, call->ack_at - now); if (time_before(ack_at, call->ack_at)) { call->ack_at = ack_at; - rxrpc_set_timer(call); + rxrpc_set_timer(call, rxrpc_timer_set_for_ack); } } } @@ -293,7 +294,7 @@ recheck_state: goto recheck_state; } - rxrpc_set_timer(call); + rxrpc_set_timer(call, rxrpc_timer_set_for_resend); /* other events may have been raised since we started checking */ if (call->events && call->state < RXRPC_CALL_COMPLETE) { |