diff options
author | David Howells <dhowells@redhat.com> | 2017-01-05 10:38:33 +0000 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2017-01-05 11:39:44 +0000 |
commit | 3e018daf045f3803c3ebe89dbb48318f24ffb790 (patch) | |
tree | 7d7514ce0bb08a07eb46c36c0fe15609c38e5371 /net/rxrpc | |
parent | b1d9f7fde0bb6c143a9a5b9246ea191e28f2c364 (diff) | |
download | linux-3e018daf045f3803c3ebe89dbb48318f24ffb790.tar.gz linux-3e018daf045f3803c3ebe89dbb48318f24ffb790.tar.bz2 linux-3e018daf045f3803c3ebe89dbb48318f24ffb790.zip |
rxrpc: Show a call's hard-ACK cursors in /proc/net/rxrpc_calls
Show a call's hard-ACK cursors in /proc/net/rxrpc_calls so that a call's
progress can be more easily monitored.
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'net/rxrpc')
-rw-r--r-- | net/rxrpc/proc.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/net/rxrpc/proc.c b/net/rxrpc/proc.c index 65cd980767fa..b9bcfbfb095c 100644 --- a/net/rxrpc/proc.c +++ b/net/rxrpc/proc.c @@ -52,6 +52,7 @@ static int rxrpc_call_seq_show(struct seq_file *seq, void *v) struct rxrpc_sock *rx; struct rxrpc_peer *peer; struct rxrpc_call *call; + rxrpc_seq_t tx_hard_ack, rx_hard_ack; char lbuff[50], rbuff[50]; if (v == &rxrpc_calls) { @@ -82,9 +83,11 @@ static int rxrpc_call_seq_show(struct seq_file *seq, void *v) else strcpy(rbuff, "no_connection"); + tx_hard_ack = READ_ONCE(call->tx_hard_ack); + rx_hard_ack = READ_ONCE(call->rx_hard_ack); seq_printf(seq, "UDP %-47.47s %-47.47s %4x %08x %08x %s %3u" - " %-8.8s %08x %lx\n", + " %-8.8s %08x %lx %08x %02x %08x %02x\n", lbuff, rbuff, call->service_id, @@ -94,7 +97,9 @@ static int rxrpc_call_seq_show(struct seq_file *seq, void *v) atomic_read(&call->usage), rxrpc_call_states[call->state], call->abort_code, - call->user_call_ID); + call->user_call_ID, + tx_hard_ack, READ_ONCE(call->tx_top) - tx_hard_ack, + rx_hard_ack, READ_ONCE(call->rx_top) - rx_hard_ack); return 0; } |