1 /*-
2 * SPDX-License-Identifier: BSD-3-Clause
3 *
4 * Copyright (c) 2008-2012, by Randall Stewart. All rights reserved.
5 * Copyright (c) 2008-2012, by Michael Tuexen. All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions are met:
9 *
10 * a) Redistributions of source code must retain the above copyright notice,
11 * this list of conditions and the following disclaimer.
12 *
13 * b) Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in
15 * the documentation and/or other materials provided with the distribution.
16 *
17 * c) Neither the name of Cisco Systems, Inc. nor the names of its
18 * contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
23 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
25 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
31 * THE POSSIBILITY OF SUCH DAMAGE.
32 */
33
34 #include <sys/cdefs.h>
35 __FBSDID("$FreeBSD: releng/12.0/sys/netinet/sctp_dtrace_define.h 338213 2018-08-22 21:23:32Z tuexen $");
36
37 #ifndef _NETINET_SCTP_DTRACE_DEFINE_H_
38 #define _NETINET_SCTP_DTRACE_DEFINE_H_
39
40 #include <sys/kernel.h>
41 #include <sys/sdt.h>
42
43 SDT_PROVIDER_DECLARE(sctp);
44
45 /********************************************************/
46 /* Cwnd probe - tracks changes in the congestion window on a netp */
47 /********************************************************/
48 /* Initial */
49 SDT_PROBE_DEFINE5(sctp, cwnd, net, init,
50 "uint32_t", /* The Vtag for this end */
51 "uint32_t", /* The port number of the local side << 16 |
52 * port number of remote in network byte
53 * order. */
54 "uintptr_t", /* The pointer to the struct sctp_nets *
55 * changing */
56 "int", /* The old value of the cwnd */
57 "int"); /* The new value of the cwnd */
58
59 /* ACK-INCREASE */
60 SDT_PROBE_DEFINE5(sctp, cwnd, net, ack,
61 "uint32_t", /* The Vtag for this end */
62 "uint32_t", /* The port number of the local side << 16 |
63 * port number of remote in network byte
64 * order. */
65 "uintptr_t", /* The pointer to the struct sctp_nets *
66 * changing */
67 "int", /* The old value of the cwnd */
68 "int"); /* The new value of the cwnd */
69
70 /* ACK-INCREASE */
71 SDT_PROBE_DEFINE5(sctp, cwnd, net, rttvar,
72 "uint64_t", /* The Vtag << 32 | localport << 16 |
73 * remoteport */
74 "uint64_t", /* obw | nbw */
75 "uint64_t", /* bwrtt | newrtt */
76 "uint64_t", /* flight */
77 "uint64_t"); /* (cwnd << 32) | point << 16 | retval(0/1) */
78
79 SDT_PROBE_DEFINE5(sctp, cwnd, net, rttstep,
80 "uint64_t", /* The Vtag << 32 | localport << 16 |
81 * remoteport */
82 "uint64_t", /* obw | nbw */
83 "uint64_t", /* bwrtt | newrtt */
84 "uint64_t", /* flight */
85 "uint64_t"); /* (cwnd << 32) | point << 16 | retval(0/1) */
86
87 /* FastRetransmit-DECREASE */
88 SDT_PROBE_DEFINE5(sctp, cwnd, net, fr,
89 "uint32_t", /* The Vtag for this end */
90 "uint32_t", /* The port number of the local side << 16 |
91 * port number of remote in network byte
92 * order. */
93 "uintptr_t", /* The pointer to the struct sctp_nets *
94 * changing */
95 "int", /* The old value of the cwnd */
96 "int"); /* The new value of the cwnd */
97
98 /* TimeOut-DECREASE */
99 SDT_PROBE_DEFINE5(sctp, cwnd, net, to,
100 "uint32_t", /* The Vtag for this end */
101 "uint32_t", /* The port number of the local side << 16 |
102 * port number of remote in network byte
103 * order. */
104 "uintptr_t", /* The pointer to the struct sctp_nets *
105 * changing */
106 "int", /* The old value of the cwnd */
107 "int"); /* The new value of the cwnd */
108
109 /* BurstLimit-DECREASE */
110 SDT_PROBE_DEFINE5(sctp, cwnd, net, bl,
111 "uint32_t", /* The Vtag for this end */
112 "uint32_t", /* The port number of the local side << 16 |
113 * port number of remote in network byte
114 * order. */
115 "uintptr_t", /* The pointer to the struct sctp_nets *
116 * changing */
117 "int", /* The old value of the cwnd */
118 "int"); /* The new value of the cwnd */
119
120 /* ECN-DECREASE */
121 SDT_PROBE_DEFINE5(sctp, cwnd, net, ecn,
122 "uint32_t", /* The Vtag for this end */
123 "uint32_t", /* The port number of the local side << 16 |
124 * port number of remote in network byte
125 * order. */
126 "uintptr_t", /* The pointer to the struct sctp_nets *
127 * changing */
128 "int", /* The old value of the cwnd */
129 "int"); /* The new value of the cwnd */
130
131 /* PacketDrop-DECREASE */
132 SDT_PROBE_DEFINE5(sctp, cwnd, net, pd,
133 "uint32_t", /* The Vtag for this end */
134 "uint32_t", /* The port number of the local side << 16 |
135 * port number of remote in network byte
136 * order. */
137 "uintptr_t", /* The pointer to the struct sctp_nets *
138 * changing */
139 "int", /* The old value of the cwnd */
140 "int"); /* The new value of the cwnd */
141
142 /********************************************************/
143 /* Rwnd probe - tracks changes in the receiver window for an assoc */
144 /********************************************************/
145 SDT_PROBE_DEFINE4(sctp, rwnd, assoc, val,
146 "uint32_t", /* The Vtag for this end */
147 "uint32_t", /* The port number of the local side << 16 |
148 * port number of remote in network byte
149 * order. */
150 "int", /* The up/down amount */
151 "int"); /* The new value of the cwnd */
152
153 /********************************************************/
154 /* flight probe - tracks changes in the flight size on a net or assoc */
155 /********************************************************/
156 SDT_PROBE_DEFINE5(sctp, flightsize, net, val,
157 "uint32_t", /* The Vtag for this end */
158 "uint32_t", /* The port number of the local side << 16 |
159 * port number of remote in network byte
160 * order. */
161 "uintptr_t", /* The pointer to the struct sctp_nets *
162 * changing */
163 "int", /* The up/down amount */
164 "int"); /* The new value of the cwnd */
165
166 /********************************************************/
167 /* The total flight version */
168 /********************************************************/
169 SDT_PROBE_DEFINE4(sctp, flightsize, assoc, val,
170 "uint32_t", /* The Vtag for this end */
171 "uint32_t", /* The port number of the local side << 16 |
172 * port number of remote in network byte
173 * order. */
174 "int", /* The up/down amount */
175 "int"); /* The new value of the cwnd */
176
177 #endif
Cache object: 6eea1ba04f641ba98e064b310d4bba8b
|