X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Fsock.h;h=5cd02ca86f3a895579f89f6e5deb9797a9bac957;hb=26e448278828799005561b761abd2819d6928680;hp=3f48fa3644269e768b98da663666f2fbc2509c2d;hpb=3bc29f0a41b3c803245b845db2e1909042e72e9c;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/sock.h b/instrumentation/events/lttng-module/sock.h index 3f48fa36..5cd02ca8 100644 --- a/instrumentation/events/lttng-module/sock.h +++ b/instrumentation/events/lttng-module/sock.h @@ -4,7 +4,8 @@ #if !defined(LTTNG_TRACE_SOCK_H) || defined(TRACE_HEADER_MULTI_READ) #define LTTNG_TRACE_SOCK_H -#include "../../../probes/lttng-tracepoint-event.h" +#include +#include #include LTTNG_TRACEPOINT_EVENT(sock_rcvqueue_full, @@ -13,56 +14,50 @@ LTTNG_TRACEPOINT_EVENT(sock_rcvqueue_full, TP_ARGS(sk, skb), - TP_STRUCT__entry( - __field(int, rmem_alloc) - __field(unsigned int, truesize) - __field(int, sk_rcvbuf) - ), + TP_FIELDS( + ctf_integer(int, rmem_alloc, atomic_read(&sk->sk_rmem_alloc)) + ctf_integer(unsigned int, truesize, skb->truesize) + ctf_integer(int, sk_rcvbuf, sk->sk_rcvbuf) + ) +) + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)) - TP_fast_assign( - tp_assign(rmem_alloc, atomic_read(&sk->sk_rmem_alloc)) - tp_assign(truesize, skb->truesize) - tp_assign(sk_rcvbuf, sk->sk_rcvbuf) - ), +LTTNG_TRACEPOINT_EVENT(sock_exceed_buf_limit, + + TP_PROTO(struct sock *sk, struct proto *prot, long allocated), - TP_printk("rmem_alloc=%d truesize=%u sk_rcvbuf=%d", - __entry->rmem_alloc, __entry->truesize, __entry->sk_rcvbuf) + TP_ARGS(sk, prot, allocated), + + TP_FIELDS( + ctf_string(name, prot->name) + ctf_array(long, sysctl_mem, prot->sysctl_mem, 3) + ctf_integer(long, allocated, allocated) + ctf_integer(int, sysctl_rmem, sk_get_rmem0(sk, prot)) + ctf_integer(int, rmem_alloc, atomic_read(&sk->sk_rmem_alloc)) + ) ) +#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)) */ + LTTNG_TRACEPOINT_EVENT(sock_exceed_buf_limit, TP_PROTO(struct sock *sk, struct proto *prot, long allocated), TP_ARGS(sk, prot, allocated), - TP_STRUCT__entry( - __string(name, prot->name) - __array(long, sysctl_mem, 3) - __field(long, allocated) - __field(int, sysctl_rmem) - __field(int, rmem_alloc) - ), - - TP_fast_assign( - tp_strcpy(name, prot->name) - tp_memcpy(sysctl_mem, prot->sysctl_mem, 3 * sizeof(long)) - tp_assign(allocated, allocated) - tp_assign(sysctl_rmem, prot->sysctl_rmem[0]) - tp_assign(rmem_alloc, atomic_read(&sk->sk_rmem_alloc)) - ), - - TP_printk("proto:%s sysctl_mem=%ld,%ld,%ld allocated=%ld " - "sysctl_rmem=%d rmem_alloc=%d", - __entry->name, - __entry->sysctl_mem[0], - __entry->sysctl_mem[1], - __entry->sysctl_mem[2], - __entry->allocated, - __entry->sysctl_rmem, - __entry->rmem_alloc) + TP_FIELDS( + ctf_string(name, prot->name) + ctf_array(long, sysctl_mem, prot->sysctl_mem, 3) + ctf_integer(long, allocated, allocated) + ctf_integer(int, sysctl_rmem, prot->sysctl_rmem[0]) + ctf_integer(int, rmem_alloc, atomic_read(&sk->sk_rmem_alloc)) + ) ) +#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)) */ + #endif /* LTTNG_TRACE_SOCK_H */ /* This part must be outside protection */ -#include "../../../probes/define_trace.h" +#include