svn commit: r258605 - head/sys/netinet

Adrian Chadd adrian at FreeBSD.org
Mon Nov 25 22:55:07 UTC 2013


Author: adrian
Date: Mon Nov 25 22:55:06 2013
New Revision: 258605
URL: http://svnweb.freebsd.org/changeset/base/258605

Log:
  Convert over the TCP probes to use mtod() rather than directly
  dereferencing m->m_data.
  
  Sponsored by:	Netflix, Inc.

Modified:
  head/sys/netinet/tcp_input.c
  head/sys/netinet/tcp_subr.c

Modified: head/sys/netinet/tcp_input.c
==============================================================================
--- head/sys/netinet/tcp_input.c	Mon Nov 25 22:37:36 2013	(r258604)
+++ head/sys/netinet/tcp_input.c	Mon Nov 25 22:55:06 2013	(r258605)
@@ -1393,7 +1393,7 @@ relocked:
 	}
 #endif
 
-	TCP_PROBE5(receive, NULL, tp, m->m_data, tp, th);
+	TCP_PROBE5(receive, NULL, tp, mtod(m, const char *), tp, th);
 
 	/*
 	 * Segment belongs to a connection in SYN_SENT, ESTABLISHED or later
@@ -1405,7 +1405,7 @@ relocked:
 	return;
 
 dropwithreset:
-	TCP_PROBE5(receive, NULL, tp, m->m_data, tp, th);
+	TCP_PROBE5(receive, NULL, tp, mtod(m, const char *), tp, th);
 
 	if (ti_locked == TI_WLOCKED) {
 		INP_INFO_WUNLOCK(&V_tcbinfo);
@@ -1429,7 +1429,7 @@ dropwithreset:
 
 dropunlock:
 	if (m != NULL)
-		TCP_PROBE5(receive, NULL, tp, m->m_data, tp, th);
+		TCP_PROBE5(receive, NULL, tp, mtod(m, const char *), tp, th);
 
 	if (ti_locked == TI_WLOCKED) {
 		INP_INFO_WUNLOCK(&V_tcbinfo);
@@ -1928,8 +1928,8 @@ tcp_do_segment(struct mbuf *m, struct tc
 			goto dropwithreset;
 		}
 		if ((thflags & (TH_ACK|TH_RST)) == (TH_ACK|TH_RST)) {
-			TCP_PROBE5(connect_refused, NULL, tp, m->m_data, tp,
-			    th);
+			TCP_PROBE5(connect_refused, NULL, tp,
+			    mtod(m, const char *), tp, th);
 			tp = tcp_drop(tp, ECONNREFUSED);
 		}
 		if (thflags & TH_RST)
@@ -1982,7 +1982,7 @@ tcp_do_segment(struct mbuf *m, struct tc
 			} else {
 				tcp_state_change(tp, TCPS_ESTABLISHED);
 				TCP_PROBE5(connect_established, NULL, tp,
-				    m->m_data, tp, th);
+				    mtod(m, const char *), tp, th);
 				cc_conn_init(tp);
 				tcp_timer_activate(tp, TT_KEEP,
 				    TP_KEEPIDLE(tp));
@@ -2387,8 +2387,8 @@ tcp_do_segment(struct mbuf *m, struct tc
 			tp->t_flags &= ~TF_NEEDFIN;
 		} else {
 			tcp_state_change(tp, TCPS_ESTABLISHED);
-			TCP_PROBE5(accept_established, NULL, tp, m->m_data, tp,
-			    th);
+			TCP_PROBE5(accept_established, NULL, tp,
+			    mtod(m, const char *), tp, th);
 			cc_conn_init(tp);
 			tcp_timer_activate(tp, TT_KEEP, TP_KEEPIDLE(tp));
 		}

Modified: head/sys/netinet/tcp_subr.c
==============================================================================
--- head/sys/netinet/tcp_subr.c	Mon Nov 25 22:37:36 2013	(r258604)
+++ head/sys/netinet/tcp_subr.c	Mon Nov 25 22:55:06 2013	(r258605)
@@ -720,9 +720,10 @@ tcp_respond(struct tcpcb *tp, void *ipge
 		tcp_trace(TA_OUTPUT, 0, tp, mtod(m, void *), th, 0);
 #endif
 	if (flags & TH_RST)
-		TCP_PROBE5(accept_refused, NULL, NULL, m->m_data, tp, nth);
+		TCP_PROBE5(accept_refused, NULL, NULL, mtod(m, const char *),
+		    tp, nth);
 
-	TCP_PROBE5(send, NULL, tp, m->m_data, tp, nth);
+	TCP_PROBE5(send, NULL, tp, mtod(m, const char *), tp, nth);
 #ifdef INET6
 	if (isipv6)
 		(void) ip6_output(m, NULL, NULL, ipflags, NULL, NULL, inp);


More information about the svn-src-all mailing list