NFSD: Enhance the nfsd_cb_setup tracepoint
Display the transport protocol and authentication flavor so admins can see what they might be getting wrong. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
Родитель
9f57c6062b
Коммит
3c92fba557
|
@ -939,7 +939,8 @@ static int setup_callback_client(struct nfs4_client *clp, struct nfs4_cb_conn *c
|
|||
}
|
||||
clp->cl_cb_client = client;
|
||||
clp->cl_cb_cred = cred;
|
||||
trace_nfsd_cb_setup(clp);
|
||||
trace_nfsd_cb_setup(clp, rpc_peeraddr2str(client, RPC_DISPLAY_NETID),
|
||||
args.authflavor);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -910,7 +910,6 @@ DEFINE_EVENT(nfsd_cb_class, nfsd_cb_##name, \
|
|||
TP_PROTO(const struct nfs4_client *clp), \
|
||||
TP_ARGS(clp))
|
||||
|
||||
DEFINE_NFSD_CB_EVENT(setup);
|
||||
DEFINE_NFSD_CB_EVENT(state);
|
||||
DEFINE_NFSD_CB_EVENT(lost);
|
||||
DEFINE_NFSD_CB_EVENT(shutdown);
|
||||
|
@ -931,6 +930,32 @@ TRACE_DEFINE_ENUM(RPC_AUTH_GSS_KRB5P);
|
|||
{ RPC_AUTH_GSS_KRB5I, "krb5i" }, \
|
||||
{ RPC_AUTH_GSS_KRB5P, "krb5p" })
|
||||
|
||||
TRACE_EVENT(nfsd_cb_setup,
|
||||
TP_PROTO(const struct nfs4_client *clp,
|
||||
const char *netid,
|
||||
rpc_authflavor_t authflavor
|
||||
),
|
||||
TP_ARGS(clp, netid, authflavor),
|
||||
TP_STRUCT__entry(
|
||||
__field(u32, cl_boot)
|
||||
__field(u32, cl_id)
|
||||
__field(unsigned long, authflavor)
|
||||
__array(unsigned char, addr, sizeof(struct sockaddr_in6))
|
||||
__array(unsigned char, netid, 8)
|
||||
),
|
||||
TP_fast_assign(
|
||||
__entry->cl_boot = clp->cl_clientid.cl_boot;
|
||||
__entry->cl_id = clp->cl_clientid.cl_id;
|
||||
strlcpy(__entry->netid, netid, sizeof(__entry->netid));
|
||||
__entry->authflavor = authflavor;
|
||||
memcpy(__entry->addr, &clp->cl_cb_conn.cb_addr,
|
||||
sizeof(struct sockaddr_in6));
|
||||
),
|
||||
TP_printk("addr=%pISpc client %08x:%08x proto=%s flavor=%s",
|
||||
__entry->addr, __entry->cl_boot, __entry->cl_id,
|
||||
__entry->netid, show_nfsd_authflavor(__entry->authflavor))
|
||||
);
|
||||
|
||||
TRACE_EVENT(nfsd_cb_setup_err,
|
||||
TP_PROTO(
|
||||
const struct nfs4_client *clp,
|
||||
|
|
Загрузка…
Ссылка в новой задаче