Skip to content

Conversation

@natoscott
Copy link

Default to providing lightweight USDT trace points when LTTng is unavailable. This piggybacks on the existing tracing code added for LTTng for a minimal set of changes.

$ sudo bpftrace -l usdt:build/lib/lib*.so:*
usdt:build/lib/libefa-rdmav59.so:rdma_core_efa:post_recv
usdt:build/lib/libefa-rdmav59.so:rdma_core_efa:post_send
usdt:build/lib/libefa-rdmav59.so:rdma_core_efa:process_completion
usdt:build/lib/libefa.so:rdma_core_efa:post_recv
usdt:build/lib/libefa.so:rdma_core_efa:post_send
usdt:build/lib/libefa.so:rdma_core_efa:process_completion
usdt:build/lib/libhns-rdmav59.so:rdma_core_hns:poll_cq
usdt:build/lib/libhns-rdmav59.so:rdma_core_hns:post_recv
usdt:build/lib/libhns-rdmav59.so:rdma_core_hns:post_send
usdt:build/lib/libhns.so:rdma_core_hns:poll_cq
usdt:build/lib/libhns.so:rdma_core_hns:post_recv
usdt:build/lib/libhns.so:rdma_core_hns:post_send
usdt:build/lib/libmlx5-rdmav59.so:rdma_core_mlx5:post_send
usdt:build/lib/libmlx5.so:rdma_core_mlx5:post_send
usdt:build/lib/librxe-rdmav59.so:rdma_core_rxe:post_send

The USDT header used here is from the libbpf/usdt project at https://github.com/libbpf/usdt.git

Further background discussion for this commit is included in #1621

Default to providing lightweight USDT trace points when LTTng is unavailable. This piggybacks on the existing tracing code added for LTTng for a minimal set of changes. > $ sudo bpftrace -l usdt:build/lib/lib*.so:* > usdt:build/lib/libefa-rdmav59.so:rdma_core_efa:post_recv > usdt:build/lib/libefa-rdmav59.so:rdma_core_efa:post_send > usdt:build/lib/libefa-rdmav59.so:rdma_core_efa:process_completion > usdt:build/lib/libefa.so:rdma_core_efa:post_recv > usdt:build/lib/libefa.so:rdma_core_efa:post_send > usdt:build/lib/libefa.so:rdma_core_efa:process_completion > usdt:build/lib/libhns-rdmav59.so:rdma_core_hns:poll_cq > usdt:build/lib/libhns-rdmav59.so:rdma_core_hns:post_recv > usdt:build/lib/libhns-rdmav59.so:rdma_core_hns:post_send > usdt:build/lib/libhns.so:rdma_core_hns:poll_cq > usdt:build/lib/libhns.so:rdma_core_hns:post_recv > usdt:build/lib/libhns.so:rdma_core_hns:post_send > usdt:build/lib/libmlx5-rdmav59.so:rdma_core_mlx5:post_send > usdt:build/lib/libmlx5.so:rdma_core_mlx5:post_send > usdt:build/lib/librxe-rdmav59.so:rdma_core_rxe:post_send The USDT header used here is from the libbpf/usdt project at https://github.com/libbpf/usdt.git Further background discussion for this commit is included in linux-rdma#1621 Signed-off-by: Nathan Scott <nathans@redhat.com>
#define rdma_tracepoint(arg...)
#include <util/usdt.h>

#define rdma_tracepoint(arg...) USDT(arg)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should also be enabled by a cmake flag and not as fallback to LTTng.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants