History

rxrpc: Trace received aborts

Add a tracepoint (rxrpc_rx_abort) to record received aborts.

David Howells committed 9 years ago

Commit 005ede21 parent fb46f6e2 files · +27 −1Browse files

Unified · Split

2 files
  1. include/trace/events/rxrpc.h +24 −0
  2. net/rxrpc/input.c +3 −1
include/trace/events/rxrpc.h+24−0
@@ -683,6 +683,30 @@ TRACE_EVENT(rxrpc_rx_ack, · 682 unmodified lines
683683 __entry->n_acks)
684684 );
685685
686+TRACE_EVENT(rxrpc_rx_abort,
687+ TP_PROTO(struct rxrpc_call *call, rxrpc_serial_t serial,
688+ u32 abort_code),
689+
690+ TP_ARGS(call, serial, abort_code),
691+
692+ TP_STRUCT__entry(
693+ __field(struct rxrpc_call *, call )
694+ __field(rxrpc_serial_t, serial )
695+ __field(u32, abort_code )
696+ ),
697+
698+ TP_fast_assign(
699+ __entry->call = call;
700+ __entry->serial = serial;
701+ __entry->abort_code = abort_code;
702+ ),
703+
704+ TP_printk("c=%p ABORT %08x ac=%d",
705+ __entry->call,
706+ __entry->serial,
707+ __entry->abort_code)
708+ );
709+
686710 TRACE_EVENT(rxrpc_tx_data,
687711 TP_PROTO(struct rxrpc_call *call, rxrpc_seq_t seq,
688712 rxrpc_serial_t serial, u8 flags, bool retrans, bool lose),
net/rxrpc/input.c+3−1
@@ -877,7 +877,7 @@ static void rxrpc_input_ackall(struct rxrpc_call *call, struct sk_buff *skb) · 876 unmodified lines
877877 }
878878
879879 /*
880− * Process an ABORT packet.
880+ * Process an ABORT packet directed at a call.
881881 */
882882 static void rxrpc_input_abort(struct rxrpc_call *call, struct sk_buff *skb)
883883 {
@@ -892,6 +892,8 @@ static void rxrpc_input_abort(struct rxrpc_call *call, struct sk_buff *skb) · 8 unmodified lines
892892 &wtmp, sizeof(wtmp)) >= 0)
893893 abort_code = ntohl(wtmp);
894894
895+ trace_rxrpc_rx_abort(call, sp->hdr.serial, abort_code);
896+
895897 _proto("Rx ABORT %%%u { %x }", sp->hdr.serial, abort_code);
896898
897899 if (rxrpc_set_call_completion(call, RXRPC_CALL_REMOTELY_ABORTED,