mbox series

[V7,0/6] Add MAD stack trace points

Message ID 20190319211149.5447-1-ira.weiny@intel.com (mailing list archive)
Headers show
Series Add MAD stack trace points | expand

Message

Ira Weiny March 19, 2019, 9:11 p.m. UTC
From: Ira Weiny <ira.weiny@intel.com>

Major issue of the umad buffer usage has been fixed.  Easiest way to do this
was to just add a "send" vs "recv" trace point for the read case.  I also
placed these traces where they would only fire if there were no errors as the
mad gets requeued in the case of error.

Changing the umad trace points required updating the BPF sample code.


Changes for V7:
	Added reviewed by lines
	Used rdma_ah_get_dlid() helper (bit cleaner code)
	Fix use of user buffer in umad traces
	Update BPF sample for new umad traces

Changes for V6:
	Changes from V5:
	Merge using the trace structe in create_mad_addr_info()
		Fixed version for TRACEPOINTS off

Changes for V5:
        checkpatch cleanup
        Remove if statements and use calls in TP_fast_assign for
        cleaner trace code

Changes for V4:
        Change dev_name to dev_index

Changes for V3:
        Rebased on current RDMA for next
        Change license text to SPDX tag
        Change dev_name to string from array
        Reorder fields for more compact ring buffer utilization
        Use a defined roce address type for safer memcpy/memset
        Adjust BPF to new umad format

Changes for v2:
        Update MAINTAINERS as indicated from Doug
        Now CC'ing the Tracing maintainers so they are aware of the additions

[1] https://www.spinics.net/lists/linux-rdma/msg29109.html


Ira Weiny (6):
  IB/MAD: Add send path trace points
  IB/MAD: Add recv path trace point
  IB/MAD: Add agent trace points
  IB/UMAD: Add umad trace points
  IB/MAD: Add SMP details to MAD tracing
  BPF: Add sample code for new ib_umad tracepoint

 MAINTAINERS                        |   4 +
 drivers/infiniband/core/mad.c      |  48 +++-
 drivers/infiniband/core/user_mad.c |  12 +
 include/trace/events/ib_mad.h      | 390 +++++++++++++++++++++++++++++
 include/trace/events/ib_umad.h     | 126 ++++++++++
 samples/bpf/Makefile               |   3 +
 samples/bpf/ibumad_kern.c          | 144 +++++++++++
 samples/bpf/ibumad_user.c          | 122 +++++++++
 8 files changed, 848 insertions(+), 1 deletion(-)
 create mode 100644 include/trace/events/ib_mad.h
 create mode 100644 include/trace/events/ib_umad.h
 create mode 100644 samples/bpf/ibumad_kern.c
 create mode 100644 samples/bpf/ibumad_user.c

Comments

Jason Gunthorpe March 27, 2019, 6:55 p.m. UTC | #1
On Tue, Mar 19, 2019 at 02:11:43PM -0700, ira.weiny@intel.com wrote:
> From: Ira Weiny <ira.weiny@intel.com>
> 
> Major issue of the umad buffer usage has been fixed.  Easiest way to do this
> was to just add a "send" vs "recv" trace point for the read case.  I also
> placed these traces where they would only fire if there were no errors as the
> mad gets requeued in the case of error.
> 
> Changing the umad trace points required updating the BPF sample code.
> 
> 
> Changes for V7:
> 	Added reviewed by lines
> 	Used rdma_ah_get_dlid() helper (bit cleaner code)
> 	Fix use of user buffer in umad traces
> 	Update BPF sample for new umad traces
> 
> Changes for V6:
> 	Changes from V5:
> 	Merge using the trace structe in create_mad_addr_info()
> 		Fixed version for TRACEPOINTS off
> 
> Changes for V5:
>         checkpatch cleanup
>         Remove if statements and use calls in TP_fast_assign for
>         cleaner trace code
> 
> Changes for V4:
>         Change dev_name to dev_index
> 
> Changes for V3:
>         Rebased on current RDMA for next
>         Change license text to SPDX tag
>         Change dev_name to string from array
>         Reorder fields for more compact ring buffer utilization
>         Use a defined roce address type for safer memcpy/memset
>         Adjust BPF to new umad format
> 
> Changes for v2:
>         Update MAINTAINERS as indicated from Doug
>         Now CC'ing the Tracing maintainers so they are aware of the additions
> 
> [1] https://www.spinics.net/lists/linux-rdma/msg29109.html
> 
> 
> Ira Weiny (6):
>   IB/MAD: Add send path trace points
>   IB/MAD: Add recv path trace point
>   IB/MAD: Add agent trace points
>   IB/UMAD: Add umad trace points
>   IB/MAD: Add SMP details to MAD tracing
>   BPF: Add sample code for new ib_umad tracepoint

Applied to rdma for-next

Thanks,
Jason