123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #undef TRACE_SYSTEM
- #define TRACE_SYSTEM sock
- #if !defined(_TRACE_SOCK_H) || defined(TRACE_HEADER_MULTI_READ)
- #define _TRACE_SOCK_H
- #include <net/sock.h>
- #include <linux/tracepoint.h>
- TRACE_EVENT(sock_rcvqueue_full,
- TP_PROTO(struct sock *sk, struct sk_buff *skb),
- TP_ARGS(sk, skb),
- TP_STRUCT__entry(
- __field(int, rmem_alloc)
- __field(unsigned int, truesize)
- __field(int, sk_rcvbuf)
- ),
- TP_fast_assign(
- __entry->rmem_alloc = atomic_read(&sk->sk_rmem_alloc);
- __entry->truesize = skb->truesize;
- __entry->sk_rcvbuf = sk->sk_rcvbuf;
- ),
- TP_printk("rmem_alloc=%d truesize=%u sk_rcvbuf=%d",
- __entry->rmem_alloc, __entry->truesize, __entry->sk_rcvbuf)
- );
- TRACE_EVENT(sock_exceed_buf_limit,
- TP_PROTO(struct sock *sk, struct proto *prot, long allocated),
- TP_ARGS(sk, prot, allocated),
- TP_STRUCT__entry(
- __array(char, name, 32)
- __field(long *, sysctl_mem)
- __field(long, allocated)
- __field(int, sysctl_rmem)
- __field(int, rmem_alloc)
- ),
- TP_fast_assign(
- strncpy(__entry->name, prot->name, 32);
- __entry->sysctl_mem = prot->sysctl_mem;
- __entry->allocated = allocated;
- __entry->sysctl_rmem = prot->sysctl_rmem[0];
- __entry->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)
- );
- #endif /* _TRACE_SOCK_H */
- /* This part must be outside protection */
- #include <trace/define_trace.h>
|