svn commit: r214884 - in stable/7: share/man/man4 sys/netinet

Lawrence Stewart lstewart at FreeBSD.org
Sat Nov 6 14:53:22 UTC 2010


Author: lstewart
Date: Sat Nov  6 14:53:22 2010
New Revision: 214884
URL: http://svn.freebsd.org/changeset/base/214884

Log:
  MFC r213162:
  
  Log the number of segments currently in the reassembly queue.
  
  Sponsored by:	FreeBSD Foundation

Modified:
  stable/7/share/man/man4/siftr.4
  stable/7/sys/netinet/siftr.c
Directory Properties:
  stable/7/share/man/   (props changed)
  stable/7/share/man/man1/   (props changed)
  stable/7/share/man/man3/   (props changed)
  stable/7/share/man/man4/   (props changed)
  stable/7/share/man/man5/   (props changed)
  stable/7/share/man/man7/   (props changed)
  stable/7/share/man/man8/   (props changed)
  stable/7/share/man/man9/   (props changed)
  stable/7/sys/   (props changed)
  stable/7/sys/cddl/contrib/opensolaris/   (props changed)
  stable/7/sys/contrib/dev/acpica/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)

Modified: stable/7/share/man/man4/siftr.4
==============================================================================
--- stable/7/share/man/man4/siftr.4	Sat Nov  6 14:49:10 2010	(r214883)
+++ stable/7/share/man/man4/siftr.4	Sat Nov  6 14:53:22 2010	(r214884)
@@ -30,7 +30,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 23, 2010
+.Dd September 25, 2010
 .Dt SIFTR 4
 .Os
 .Sh NAME
@@ -198,7 +198,7 @@ The data is CSV formatted.
 .Bd -literal -offset indent
 o,0xbec491a5,1238556193.463551,172.16.7.28,22,172.16.2.5,55931, \\
 1073725440,172312,6144,66560,66608,8,1,4,1448,936,1,996,255, \\
-33304,208,66608,0,208
+33304,208,66608,0,208,0
 .Ed
 .Pp
 Field descriptions are as follows:
@@ -328,6 +328,10 @@ The current number of bytes in the socke
 The current number of unacknowledged bytes in-flight.
 Bytes acknowledged via SACK are not excluded from this count.
 .El
+.Bl -tag -offset indent
+.It Va 26
+The current number of segments in the reassembly queue.
+.El
 .Pp
 The third type of log message is written to the file when the module is disabled
 and ceases collecting data from the running kernel.

Modified: stable/7/sys/netinet/siftr.c
==============================================================================
--- stable/7/sys/netinet/siftr.c	Sat Nov  6 14:49:10 2010	(r214883)
+++ stable/7/sys/netinet/siftr.c	Sat Nov  6 14:53:22 2010	(r214884)
@@ -55,7 +55,7 @@
  * SIFTR should be directed to him via email: lastewart at swin.edu.au
  *
  * Initial release date: June 2007
- * Most recent update: June 2010
+ * Most recent update: September 2010
  ******************************************************/
 
 #include <sys/cdefs.h>
@@ -105,7 +105,7 @@ __FBSDID("$FreeBSD$");
  */
 #define V_MAJOR		1
 #define V_BACKBREAK	2
-#define V_BACKCOMPAT	3
+#define V_BACKCOMPAT	4
 #define MODVERSION	__CONCAT(V_MAJOR, __CONCAT(V_BACKBREAK, V_BACKCOMPAT))
 #define MODVERSION_STR	__XSTRING(V_MAJOR) "." __XSTRING(V_BACKBREAK) "." \
     __XSTRING(V_BACKCOMPAT)
@@ -226,6 +226,8 @@ struct pkt_node {
 	u_int			rcv_buf_cc;
 	/* Number of bytes inflight that we are waiting on ACKs for. */
 	u_int			sent_inflight_bytes;
+	/* Number of segments currently in the reassembly queue. */
+	int			t_segqlen;
 	/* Link to next pkt_node in the list. */
 	STAILQ_ENTRY(pkt_node)	nodes;
 };
@@ -448,7 +450,7 @@ siftr_process_pkt(struct pkt_node * pkt_
 		    MAX_LOG_MSG_LEN,
 		    "%c,0x%08x,%zd.%06ld,%x:%x:%x:%x:%x:%x:%x:%x,%u,%x:%x:%x:"
 		    "%x:%x:%x:%x:%x,%u,%ld,%ld,%ld,%ld,%ld,%u,%u,%u,%u,%u,%u,"
-		    "%u,%d,%u,%u,%u,%u,%u\n",
+		    "%u,%d,%u,%u,%u,%u,%u,%u\n",
 		    direction[pkt_node->direction],
 		    pkt_node->hash,
 		    pkt_node->tval.tv_sec,
@@ -488,7 +490,8 @@ siftr_process_pkt(struct pkt_node * pkt_
 		    pkt_node->snd_buf_cc,
 		    pkt_node->rcv_buf_hiwater,
 		    pkt_node->rcv_buf_cc,
-		    pkt_node->sent_inflight_bytes);
+		    pkt_node->sent_inflight_bytes,
+		    pkt_node->t_segqlen);
 	} else { /* IPv4 packet */
 		pkt_node->ip_laddr[0] = FIRST_OCTET(pkt_node->ip_laddr[3]);
 		pkt_node->ip_laddr[1] = SECOND_OCTET(pkt_node->ip_laddr[3]);
@@ -504,7 +507,7 @@ siftr_process_pkt(struct pkt_node * pkt_
 		log_buf->ae_bytesused = snprintf(log_buf->ae_data,
 		    MAX_LOG_MSG_LEN,
 		    "%c,0x%08x,%jd.%06ld,%u.%u.%u.%u,%u,%u.%u.%u.%u,%u,%ld,%ld,"
-		    "%ld,%ld,%ld,%u,%u,%u,%u,%u,%u,%u,%d,%u,%u,%u,%u,%u\n",
+		    "%ld,%ld,%ld,%u,%u,%u,%u,%u,%u,%u,%d,%u,%u,%u,%u,%u,%u\n",
 		    direction[pkt_node->direction],
 		    pkt_node->hash,
 		    (intmax_t)pkt_node->tval.tv_sec,
@@ -536,7 +539,8 @@ siftr_process_pkt(struct pkt_node * pkt_
 		    pkt_node->snd_buf_cc,
 		    pkt_node->rcv_buf_hiwater,
 		    pkt_node->rcv_buf_cc,
-		    pkt_node->sent_inflight_bytes);
+		    pkt_node->sent_inflight_bytes,
+		    pkt_node->t_segqlen);
 #ifdef SIFTR_IPV6
 	}
 #endif
@@ -796,6 +800,7 @@ siftr_siftdata(struct pkt_node *pn, stru
 	pn->rcv_buf_hiwater = inp->inp_socket->so_rcv.sb_hiwat;
 	pn->rcv_buf_cc = inp->inp_socket->so_rcv.sb_cc;
 	pn->sent_inflight_bytes = tp->snd_max - tp->snd_una;
+	pn->t_segqlen = tp->t_segqlen;
 
 	/* We've finished accessing the tcb so release the lock. */
 	if (inp_locally_locked)


More information about the svn-src-all mailing list