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
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to