> from http://www.opensolaris.org/jive/thread.jspa?messageID=364896񙅠 > > i can guess from stack trace that tcp_send_data() is in the execution path. > > but searching through source code there are so many tcp_send_data: > > http://src.opensolaris.org/source/xref/kernel-sockets/ksocket/usr/src/uts/common/inet/tcp/tcp.c#18843 > > http://src.opensolaris.org/source/xref/nwam/nwam1/usr/src/uts/common/inet/tcp/tcp.c#18342 > > http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/inet/tcp/tcp.c#18342 > > what are their relationship? what is nwam? kernel-sockets?
Those are project gates, based on some version of onnv-gate. The only one you need to be concerned with is onnv-gate. > another questions is how is STREAM and tcp related? is tcp built on > top of stream? Yes and no -- and the answer to this has changed over time. As of now, TCP is part of the IP module, which is indeed a STREAMS module, but the datapath generally does not use STREAMS. I say "generally" because there are compatibility modes that will lead to STREAMS being used on the datapath (see e.g., so_tpi_fallback()). I'd recommend using DTrace is to understand the common TCP codepaths. -- meem _______________________________________________ opensolaris-code mailing list opensolaris-code@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/opensolaris-code