RDMA/cm: Replace pr_debug() call sites with tracepoints
authorChuck Lever <chuck.lever@oracle.com>
Mon, 17 Aug 2020 13:53:16 +0000 (09:53 -0400)
committerJason Gunthorpe <jgg@nvidia.com>
Mon, 24 Aug 2020 22:41:41 +0000 (19:41 -0300)
commit75874b3d50717ec6a821cf4de4284822204a3574
tree3687242190c62b1b9e3b1ca9a2169761ea28d68f
parentb3d03daa7cd19a91266dc2cea3587dcf60e7a1f0
RDMA/cm: Replace pr_debug() call sites with tracepoints

In the interest of converging on a common instrumentation infrastructure,
modernize the pr_debug() call sites added by commit 119bf81793ea ("IB/cm:
Add debug prints to ib_cm"). The new tracepoints appear in a new "ib_cma"
subsystem.

The conversion is somewhat mechanical. Someone more familiar with the
semantics of the recorded information might suggest additional data
capture.

Some benefits include:

- Tracepoints enable "always on" reporting of these errors
- The error records are structured and compact
- Tracepoints provide hooks for eBPF scripts

Sample output:

            nfsd-1954  [003]    62.017901: icm_dreq_skipped:     local_id=1998890974 remote_id=1129750393 state=DREQ_RCVD lap_state=LAP_UNINIT

Link: https://lore.kernel.org/r/159767239665.2968.10613294222688696646.stgit@klimt.1015granger.net
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/core/Makefile
drivers/infiniband/core/cm.c
drivers/infiniband/core/cm_trace.c [new file with mode: 0644]
drivers/infiniband/core/cm_trace.h [new file with mode: 0644]