svn commit: r245915 - head/sys/netinet

Navdeep Parhar np at FreeBSD.org
Fri Jan 25 20:23:34 UTC 2013


Author: np
Date: Fri Jan 25 20:23:33 2013
New Revision: 245915
URL: http://svnweb.freebsd.org/changeset/base/245915

Log:
  Heed SO_NO_OFFLOAD.
  
  MFC after:	1 week

Modified:
  head/sys/netinet/tcp_usrreq.c

Modified: head/sys/netinet/tcp_usrreq.c
==============================================================================
--- head/sys/netinet/tcp_usrreq.c	Fri Jan 25 20:14:27 2013	(r245914)
+++ head/sys/netinet/tcp_usrreq.c	Fri Jan 25 20:23:33 2013	(r245915)
@@ -370,7 +370,8 @@ tcp_usr_listen(struct socket *so, int ba
 		tp->t_state = TCPS_LISTEN;
 		solisten_proto(so, backlog);
 #ifdef TCP_OFFLOAD
-		tcp_offload_listen_start(tp);
+		if ((so->so_options & SO_NO_OFFLOAD) == 0)
+			tcp_offload_listen_start(tp);
 #endif
 	}
 	SOCK_UNLOCK(so);
@@ -414,7 +415,8 @@ tcp6_usr_listen(struct socket *so, int b
 		tp->t_state = TCPS_LISTEN;
 		solisten_proto(so, backlog);
 #ifdef TCP_OFFLOAD
-		tcp_offload_listen_start(tp);
+		if ((so->so_options & SO_NO_OFFLOAD) == 0)
+			tcp_offload_listen_start(tp);
 #endif
 	}
 	SOCK_UNLOCK(so);
@@ -468,6 +470,7 @@ tcp_usr_connect(struct socket *so, struc
 		goto out;
 #ifdef TCP_OFFLOAD
 	if (registered_toedevs > 0 &&
+	    (so->so_options & SO_NO_OFFLOAD) == 0 &&
 	    (error = tcp_offload_connect(so, nam)) == 0)
 		goto out;
 #endif


More information about the svn-src-all mailing list