Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F131656986
D5524.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
4 KB
Referenced Files
None
Subscribers
None
D5524.diff
View Options
Index: head/cddl/lib/libdtrace/tcp.d
===================================================================
--- head/cddl/lib/libdtrace/tcp.d
+++ head/cddl/lib/libdtrace/tcp.d
@@ -102,6 +102,7 @@
string tcps_raddr; /* remote address, as a string */
int32_t tcps_state; /* TCP state */
uint32_t tcps_iss; /* Initial sequence # sent */
+ uint32_t tcps_irs; /* Initial sequence # received */
uint32_t tcps_suna; /* sequence # sent but unacked */
uint32_t tcps_smax; /* highest sequence number sent */
uint32_t tcps_snxt; /* next sequence # to send */
@@ -112,10 +113,12 @@
uint32_t tcps_swl1; /* window update seg seq number */
uint32_t tcps_swl2; /* window update seg ack number */
uint32_t tcps_rup; /* receive urgent pointer */
+ uint32_t tcps_radv; /* advertised window */
uint32_t tcps_rwnd; /* receive window size */
int32_t tcps_rcv_ws; /* receive window scaling */
uint32_t tcps_cwnd; /* congestion window */
uint32_t tcps_cwnd_ssthresh; /* threshold for congestion avoidance */
+ uint32_t tcps_srecover; /* for use in NewReno Fast Recovery */
uint32_t tcps_sack_fack; /* SACK sequence # we have acked */
uint32_t tcps_sack_snxt; /* next SACK seq # for retransmission */
uint32_t tcps_rto; /* round-trip timeout, msec */
@@ -123,6 +126,10 @@
int tcps_retransmit; /* retransmit send event, boolean */
int tcps_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */
int tcps_debug; /* socket has SO_DEBUG set */
+ int32_t tcps_dupacks; /* consecutive dup acks received */
+ uint32_t tcps_rtttime; /* RTT measurement start time */
+ uint32_t tcps_rtseq; /* sequence # being timed */
+ uint32_t tcps_ts_recent; /* timestamp echo data */
} tcpsinfo_t;
/*
@@ -192,6 +199,7 @@
inet_ntoa6(&p->t_inpcb->inp_inc.inc_ie.ie_dependfaddr.ie6_foreign);
tcps_state = p == NULL ? -1 : p->t_state;
tcps_iss = p == NULL ? 0 : p->iss;
+ tcps_irs = p == NULL ? 0 : p->irs;
tcps_suna = p == NULL ? 0 : p->snd_una;
tcps_smax = p == NULL ? 0 : p->snd_max;
tcps_snxt = p == NULL ? 0 : p->snd_nxt;
@@ -201,11 +209,13 @@
tcps_snd_ws = p == NULL ? -1 : p->snd_scale;
tcps_swl1 = p == NULL ? -1 : p->snd_wl1;
tcps_swl2 = p == NULL ? -1 : p->snd_wl2;
+ tcps_radv = p == NULL ? -1 : p->rcv_adv;
tcps_rwnd = p == NULL ? -1 : p->rcv_wnd;
tcps_rup = p == NULL ? -1 : p->rcv_up;
tcps_rcv_ws = p == NULL ? -1 : p->rcv_scale;
tcps_cwnd = p == NULL ? -1 : p->snd_cwnd;
tcps_cwnd_ssthresh = p == NULL ? -1 : p->snd_ssthresh;
+ tcps_srecover = p == NULL ? -1 : p->snd_recover;
tcps_sack_fack = p == NULL ? 0 : p->snd_fack;
tcps_sack_snxt = p == NULL ? 0 : p->sack_newdata;
tcps_rto = p == NULL ? -1 : (p->t_rxtcur * 1000) / `hz;
@@ -214,6 +224,10 @@
tcps_srtt = p == NULL ? -1 : p->t_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */
tcps_debug = p == NULL ? 0 :
p->t_inpcb->inp_socket->so_options & 1;
+ tcps_dupacks = p == NULL ? -1 : p->t_dupacks;
+ tcps_rtttime = p == NULL ? -1 : p->t_rtttime;
+ tcps_rtseq = p == NULL ? -1 : p->t_rtseq;
+ tcps_ts_recent = p == NULL ? -1 : p->ts_recent;
};
#pragma D binding "1.6.3" translator
Index: head/share/dtrace/Makefile
===================================================================
--- head/share/dtrace/Makefile
+++ head/share/dtrace/Makefile
@@ -20,6 +20,7 @@
nfsclienttime \
siftr \
tcpconn \
+ tcpdebug \
tcpstate \
tcptrack \
udptrack \
Index: head/share/dtrace/tcpdebug
===================================================================
--- head/share/dtrace/tcpdebug
+++ head/share/dtrace/tcpdebug
@@ -83,7 +83,8 @@
{
seq = args[1]->tcp_seq;
ack = args[1]->tcp_ack;
- len = args[2]->ip_plength - 20;
+ len = args[2]->ip_plength - sizeof(struct tcphdr);
+ flags = args[1]->tcp_flags;
printf("%p %s: output [%x..%x]", arg0,
tcp_state_string[args[0]->tcps_state], seq, seq + len);
@@ -120,7 +121,8 @@
seq = args[1]->tcp_seq;
ack = args[1]->tcp_ack;
- len = args[2]->ip_plength;
+ len = args[2]->ip_plength - sizeof(struct tcphdr);
+ flags = args[1]->tcp_flags;
printf("%p %s: drop [%x..%x]", arg0,
tcp_state_string[args[0]->tcps_state], seq, seq + len);
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Oct 11, 2:41 AM (9 h, 40 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23559369
Default Alt Text
D5524.diff (4 KB)
Attached To
Mode
D5524: fixes on DTrace tcpdebug script
Attached
Detach File
Event Timeline
Log In to Comment