~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/trace/events/sctp.h

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0 */
  2 #undef TRACE_SYSTEM
  3 #define TRACE_SYSTEM sctp
  4 
  5 #if !defined(_TRACE_SCTP_H) || defined(TRACE_HEADER_MULTI_READ)
  6 #define _TRACE_SCTP_H
  7 
  8 #include <net/sctp/structs.h>
  9 #include <linux/tracepoint.h>
 10 
 11 TRACE_EVENT(sctp_probe_path,
 12 
 13         TP_PROTO(struct sctp_transport *sp,
 14                  const struct sctp_association *asoc),
 15 
 16         TP_ARGS(sp, asoc),
 17 
 18         TP_STRUCT__entry(
 19                 __field(__u64, asoc)
 20                 __field(__u32, primary)
 21                 __array(__u8, ipaddr, sizeof(union sctp_addr))
 22                 __field(__u32, state)
 23                 __field(__u32, cwnd)
 24                 __field(__u32, ssthresh)
 25                 __field(__u32, flight_size)
 26                 __field(__u32, partial_bytes_acked)
 27                 __field(__u32, pathmtu)
 28         ),
 29 
 30         TP_fast_assign(
 31                 __entry->asoc = (unsigned long)asoc;
 32                 __entry->primary = (sp == asoc->peer.primary_path);
 33                 memcpy(__entry->ipaddr, &sp->ipaddr, sizeof(union sctp_addr));
 34                 __entry->state = sp->state;
 35                 __entry->cwnd = sp->cwnd;
 36                 __entry->ssthresh = sp->ssthresh;
 37                 __entry->flight_size = sp->flight_size;
 38                 __entry->partial_bytes_acked = sp->partial_bytes_acked;
 39                 __entry->pathmtu = sp->pathmtu;
 40         ),
 41 
 42         TP_printk("asoc=%#llx%s ipaddr=%pISpc state=%u cwnd=%u ssthresh=%u "
 43                   "flight_size=%u partial_bytes_acked=%u pathmtu=%u",
 44                   __entry->asoc, __entry->primary ? "(*)" : "",
 45                   __entry->ipaddr, __entry->state, __entry->cwnd,
 46                   __entry->ssthresh, __entry->flight_size,
 47                   __entry->partial_bytes_acked, __entry->pathmtu)
 48 );
 49 
 50 TRACE_EVENT(sctp_probe,
 51 
 52         TP_PROTO(const struct sctp_endpoint *ep,
 53                  const struct sctp_association *asoc,
 54                  struct sctp_chunk *chunk),
 55 
 56         TP_ARGS(ep, asoc, chunk),
 57 
 58         TP_STRUCT__entry(
 59                 __field(__u64, asoc)
 60                 __field(__u32, mark)
 61                 __field(__u16, bind_port)
 62                 __field(__u16, peer_port)
 63                 __field(__u32, pathmtu)
 64                 __field(__u32, rwnd)
 65                 __field(__u16, unack_data)
 66         ),
 67 
 68         TP_fast_assign(
 69                 struct sk_buff *skb = chunk->skb;
 70 
 71                 __entry->asoc = (unsigned long)asoc;
 72                 __entry->mark = skb->mark;
 73                 __entry->bind_port = ep->base.bind_addr.port;
 74                 __entry->peer_port = asoc->peer.port;
 75                 __entry->pathmtu = asoc->pathmtu;
 76                 __entry->rwnd = asoc->peer.rwnd;
 77                 __entry->unack_data = asoc->unack_data;
 78         ),
 79 
 80         TP_printk("asoc=%#llx mark=%#x bind_port=%d peer_port=%d pathmtu=%d "
 81                   "rwnd=%u unack_data=%d",
 82                   __entry->asoc, __entry->mark, __entry->bind_port,
 83                   __entry->peer_port, __entry->pathmtu, __entry->rwnd,
 84                   __entry->unack_data)
 85 );
 86 
 87 #endif /* _TRACE_SCTP_H */
 88 
 89 /* This part must be outside protection */
 90 #include <trace/define_trace.h>
 91 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php