diff options
author | Anders Persson <Anders.Persson@Sun.COM> | 2010-06-17 17:22:09 -0700 |
---|---|---|
committer | Anders Persson <Anders.Persson@Sun.COM> | 2010-06-17 17:22:09 -0700 |
commit | 3e95bd4ab92abca814bd28e854607d1975c7dc88 (patch) | |
tree | 9f3088b26f62207198f0d44feca65b701fafb8dc /usr/src/uts/common/inet/tcp/tcp_fusion.c | |
parent | 8e51227711fb29b69b8f42a3953e759963432065 (diff) | |
download | illumos-gate-3e95bd4ab92abca814bd28e854607d1975c7dc88.tar.gz |
PSARC/2009/590 Socket Filter Framework
6939085 Socket Filter Framework
6802067 connect_failed kernel socket callback is not triggered
6776450 time spent in tcp_close could be reduced/deferred to a worker thread
6828586 assertion failed: family == 26, file: ../../common/fs/sockfs/socksyscalls.c, line: 1608
6802078 kernel socket 'newconn' callback is passing rcv queue size as an argument
Diffstat (limited to 'usr/src/uts/common/inet/tcp/tcp_fusion.c')
-rw-r--r-- | usr/src/uts/common/inet/tcp/tcp_fusion.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/usr/src/uts/common/inet/tcp/tcp_fusion.c b/usr/src/uts/common/inet/tcp/tcp_fusion.c index c8f50cee8f..81640b8329 100644 --- a/usr/src/uts/common/inet/tcp/tcp_fusion.c +++ b/usr/src/uts/common/inet/tcp/tcp_fusion.c @@ -233,8 +233,9 @@ tcp_fuse(tcp_t *tcp, uchar_t *iphdr, tcpha_t *tcpha) mp->b_wptr += sizeof (*stropt); stropt = (struct stroptions *)mp->b_rptr; - stropt->so_flags = SO_WROFF; + stropt->so_flags = SO_WROFF | SO_MAXBLK; stropt->so_wroff = 0; + stropt->so_maxblk = INFPSZ; /* Send the options up */ putnext(peer_rq, mp); @@ -244,8 +245,9 @@ tcp_fuse(tcp_t *tcp, uchar_t *iphdr, tcpha_t *tcpha) /* The peer is a non-STREAMS end point */ ASSERT(IPCL_IS_TCP(peer_connp)); - sopp.sopp_flags = SOCKOPT_WROFF; + sopp.sopp_flags = SOCKOPT_WROFF | SOCKOPT_MAXBLK; sopp.sopp_wroff = 0; + sopp.sopp_maxblk = INFPSZ; (*peer_connp->conn_upcalls->su_set_proto_props) (peer_connp->conn_upper_handle, &sopp); } |