diff options
author | Tony Lu <tonylu@linux.alibaba.com> | 2021-11-01 10:39:14 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-11-01 16:39:14 +0300 |
commit | aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84 (patch) | |
tree | 3e35820d6b7860914d97d8a6fbdfef3520067b06 /net/smc/smc_tracepoint.h | |
parent | 4826260868202246a4dba1c682491d7f4b90d747 (diff) | |
download | linux-aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84.tar.xz |
net/smc: Introduce tracepoints for tx and rx msg
This introduce two tracepoints for smc tx and rx msg to help us
diagnosis issues of data path. These two tracepoitns don't cover the
path of CORK or MSG_MORE in tx, just the top half of data path.
Signed-off-by: Tony Lu <tonylu@linux.alibaba.com>
Reviewed-by: Wen Gu <guwen@linux.alibaba.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/smc/smc_tracepoint.h')
-rw-r--r-- | net/smc/smc_tracepoint.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/net/smc/smc_tracepoint.h b/net/smc/smc_tracepoint.h index 3bc97f5f2134..eced1546afae 100644 --- a/net/smc/smc_tracepoint.h +++ b/net/smc/smc_tracepoint.h @@ -38,6 +38,43 @@ TRACE_EVENT(smc_switch_to_fallback, __entry->sk, __entry->clcsk, __entry->fallback_rsn) ); +DECLARE_EVENT_CLASS(smc_msg_event, + + TP_PROTO(const struct smc_sock *smc, size_t len), + + TP_ARGS(smc, len), + + TP_STRUCT__entry( + __field(const void *, smc) + __field(size_t, len) + __string(name, smc->conn.lnk->ibname) + ), + + TP_fast_assign( + __entry->smc = smc; + __entry->len = len; + __assign_str(name, smc->conn.lnk->ibname); + ), + + TP_printk("smc=%p len=%zu dev=%s", + __entry->smc, __entry->len, + __get_str(name)) +); + +DEFINE_EVENT(smc_msg_event, smc_tx_sendmsg, + + TP_PROTO(const struct smc_sock *smc, size_t len), + + TP_ARGS(smc, len) +); + +DEFINE_EVENT(smc_msg_event, smc_rx_recvmsg, + + TP_PROTO(const struct smc_sock *smc, size_t len), + + TP_ARGS(smc, len) +); + #endif /* _TRACE_SMC_H */ #undef TRACE_INCLUDE_PATH |