rxrpc: Fix handling of enums-to-string translation in tracing
Fix the way enum values are translated into strings in AF_RXRPC tracepoints. The problem with just doing a lookup in a normal flat array of strings or chars is that external tracing infrastructure can't find it. Rather, TRACE_DEFINE_ENUM must be used. Also sort the enums and string tables to make it easier to keep them in order so that a future patch to __print_symbolic() can be optimised to try a direct lookup into the table first before iterating over it. A couple of _proto() macro calls are removed because they refered to tables that got moved to the tracing infrastructure. The relevant data can be found by way of tracing. Signed-off-by: David Howells <dhowells@redhat.com>
This commit is contained in:
@@ -105,14 +105,6 @@ static void rxrpc_discard_expired_client_conns(struct work_struct *);
|
||||
static DECLARE_DELAYED_WORK(rxrpc_client_conn_reap,
|
||||
rxrpc_discard_expired_client_conns);
|
||||
|
||||
const char rxrpc_conn_cache_states[RXRPC_CONN__NR_CACHE_STATES][5] = {
|
||||
[RXRPC_CONN_CLIENT_INACTIVE] = "Inac",
|
||||
[RXRPC_CONN_CLIENT_WAITING] = "Wait",
|
||||
[RXRPC_CONN_CLIENT_ACTIVE] = "Actv",
|
||||
[RXRPC_CONN_CLIENT_CULLED] = "Cull",
|
||||
[RXRPC_CONN_CLIENT_IDLE] = "Idle",
|
||||
};
|
||||
|
||||
/*
|
||||
* Get a connection ID and epoch for a client connection from the global pool.
|
||||
* The connection struct pointer is then recorded in the idr radix tree. The
|
||||
|
||||
Reference in New Issue
Block a user