Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

rxrpc: Add a tracepoint to show variables pertinent to jumbo packet size

Add a tracepoint to be called right before packets are transmitted for the
first time that shows variable values that are pertinent to how many
subpackets will be added to a jumbo DATA packet.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: Marc Dionne <marc.dionne@auristor.com>
cc: linux-afs@lists.infradead.org
Link: https://patch.msgid.link/20241204074710.990092-13-dhowells@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

David Howells and committed by
Jakub Kicinski
149d002b b7313009

+43
+41
include/trace/events/rxrpc.h
··· 903 903 __entry->tx_winsize) 904 904 ); 905 905 906 + TRACE_EVENT(rxrpc_transmit, 907 + TP_PROTO(struct rxrpc_call *call, int space), 908 + 909 + TP_ARGS(call, space), 910 + 911 + TP_STRUCT__entry( 912 + __field(unsigned int, call) 913 + __field(rxrpc_seq_t, seq) 914 + __field(u16, space) 915 + __field(u16, tx_winsize) 916 + __field(u16, cong_cwnd) 917 + __field(u16, cong_extra) 918 + __field(u16, in_flight) 919 + __field(u16, prepared) 920 + __field(u16, pmtud_jumbo) 921 + ), 922 + 923 + TP_fast_assign( 924 + __entry->call = call->debug_id; 925 + __entry->seq = call->tx_bottom; 926 + __entry->space = space; 927 + __entry->tx_winsize = call->tx_winsize; 928 + __entry->cong_cwnd = call->cong_cwnd; 929 + __entry->cong_extra = call->cong_extra; 930 + __entry->prepared = call->tx_prepared - call->tx_bottom; 931 + __entry->in_flight = call->tx_top - call->acks_hard_ack; 932 + __entry->pmtud_jumbo = call->peer->pmtud_jumbo; 933 + ), 934 + 935 + TP_printk("c=%08x q=%08x sp=%u tw=%u cw=%u+%u pr=%u if=%u pj=%u", 936 + __entry->call, 937 + __entry->seq, 938 + __entry->space, 939 + __entry->tx_winsize, 940 + __entry->cong_cwnd, 941 + __entry->cong_extra, 942 + __entry->prepared, 943 + __entry->in_flight, 944 + __entry->pmtud_jumbo) 945 + ); 946 + 906 947 TRACE_EVENT(rxrpc_rx_data, 907 948 TP_PROTO(unsigned int call, rxrpc_seq_t seq, 908 949 rxrpc_serial_t serial, u8 flags),
+2
net/rxrpc/call_event.c
··· 259 259 if (list_empty(&call->tx_sendmsg)) 260 260 break; 261 261 262 + trace_rxrpc_transmit(call, space); 263 + 262 264 spin_lock(&call->tx_lock); 263 265 do { 264 266 txb = list_first_entry(&call->tx_sendmsg,