rxrpc: Trace UDP transmission failure
Add a tracepoint to log transmission failure from the UDP transport socket being used by AF_RXRPC. Signed-off-by: David Howells <dhowells@redhat.com>
This commit is contained in:
@@ -40,7 +40,7 @@ static void rxrpc_conn_retransmit_call(struct rxrpc_connection *conn,
|
||||
} __attribute__((packed)) pkt;
|
||||
struct rxrpc_ackinfo ack_info;
|
||||
size_t len;
|
||||
int ioc;
|
||||
int ret, ioc;
|
||||
u32 serial, mtu, call_id, padding;
|
||||
|
||||
_enter("%d", conn->debug_id);
|
||||
@@ -135,10 +135,13 @@ static void rxrpc_conn_retransmit_call(struct rxrpc_connection *conn,
|
||||
break;
|
||||
}
|
||||
|
||||
kernel_sendmsg(conn->params.local->socket, &msg, iov, ioc, len);
|
||||
ret = kernel_sendmsg(conn->params.local->socket, &msg, iov, ioc, len);
|
||||
conn->params.peer->last_tx_at = ktime_get_real();
|
||||
if (ret < 0)
|
||||
trace_rxrpc_tx_fail(conn->debug_id, serial, ret,
|
||||
rxrpc_tx_fail_call_final_resend);
|
||||
|
||||
_leave("");
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -236,6 +239,8 @@ static int rxrpc_abort_connection(struct rxrpc_connection *conn,
|
||||
|
||||
ret = kernel_sendmsg(conn->params.local->socket, &msg, iov, 2, len);
|
||||
if (ret < 0) {
|
||||
trace_rxrpc_tx_fail(conn->debug_id, serial, ret,
|
||||
rxrpc_tx_fail_conn_abort);
|
||||
_debug("sendmsg failed: %d", ret);
|
||||
return -EAGAIN;
|
||||
}
|
||||
|
Reference in New Issue
Block a user