Paul Armstrong
2008-May-14 06:59 UTC
[dtrace-discuss] tcptop_snv connp->conn_tcp != connp->conn_proto_priv.cp_tcp
Tried to start up tcptop_snv on snv87 x86 and got <i>dtrace: failed to compile script /dev/fd/11: line 168: conn_tcp is not a member of struct conn_s</i> Line 288 has this line: <i>this->tcpp = (tcp_t *)this->connp->conn_tcp;</i> which, after looking at line 168 of <a href="http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/inet/ipclassifier.h">ipclassifier.h</a> (#define conn_tcp conn_proto_priv.cp_tcp) I changed to <i>this->tcpp = (tcp_t *)this->connp->conn_proto_priv.cp_tcp;</i> This worked, however, I''m now confused as theoretically they should be the same. Does anyone have a sane explanation? Thanks, Paul -- This message posted from opensolaris.org
James Carlson
2008-May-14 12:08 UTC
[dtrace-discuss] tcptop_snv connp->conn_tcp != connp->conn_proto_priv.cp_tcp
Paul Armstrong writes:> Tried to start up tcptop_snv on snv87 x86 and got > <i>dtrace: failed to compile script /dev/fd/11: line 168: conn_tcp is not a member of struct conn_s</i>I can''t seem to locate a version-controlled copy of "tcptop_snv" to verify this, but my bet would be that it was written before CR 6595449 integrated into Nevada and hasn''t been updated.> Line 288 has this line: > <i>this->tcpp = (tcp_t *)this->connp->conn_tcp;</i> > which, after looking at line 168 of <a href="http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/inet/ipclassifier.h">ipclassifier.h</a> (#define conn_tcp conn_proto_priv.cp_tcp) I changed to > <i>this->tcpp = (tcp_t *)this->connp->conn_proto_priv.cp_tcp;</i>Unfortunately, conn_t is an implementation detail of the IP stack. It changes frequently and without notice. Anything that depends on it and that isn''t integrated in the ON gate (and thus would be kept in sync with development) is at risk of breaking at any time.> This worked, however, I''m now confused as theoretically they should be the same.They''re the same only if you #include ipclassifier.h. I doubt this D script does that. -- James Carlson, Solaris Networking <james.d.carlson at sun.com> Sun Microsystems / 35 Network Drive 71.232W Vox +1 781 442 2084 MS UBUR02-212 / Burlington MA 01803-2757 42.496N Fax +1 781 442 1677
Peter Teoh
2009-Aug-19 16:15 UTC
[dtrace-discuss] tcptop_snv connp->conn_tcp != connp->conn_proto_priv.cp_tcp
Yes, I tried your suggestion and it worked. But during snooping other errors occurred: dtrace: error on enabled probe ID 17 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x0) in action #8 dtrace: error on enabled probe ID 8 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x6011a) in action #1 at DIF offset 20 dtrace: error on enabled probe ID 17 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x0) in action #8 dtrace: error on enabled probe ID 8 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x6011a) in action #1 at DIF offset 20 dtrace: error on enabled probe ID 17 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x0) in action #8 dtrace: error on enabled probe ID 8 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x6011a) in action #1 at DIF offset 20 dtrace: error on enabled probe ID 17 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x0) in action #8 dtrace: error on enabled probe ID 8 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x6011a) in action #1 at DIF offset 20 dtrace: error on enabled probe ID 17 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x0) in action #8 dtrace: error on enabled probe ID 8 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x6011a) in action #1 at DIF offset 20 dtrace: error on enabled probe ID 17 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x0) in action #8 dtrace: error on enabled probe ID 8 (ID 36432: fbt:ip:tcp_connect:return): invalid address (0x6011a) in action #1 at DIF offset 20 What are the cause of these? Once in a while I do get some valid returns: 0 0 10.10.1.156 48818 <- 66.235.133.11 80 54 <closed> 0 0 10.10.1.156 48818 -> 66.235.133.11 80 54 <closed> 0 0 10.10.1.156 48818 <- 66.235.133.11 80 54 <closed> This is talking about the tcpsnoop_snv located in: /opt/DTT/Bin/tcpsnoop_snv.d after DTraceToolkit 0.99 is installed. (my kernel is osol0906_snv115). Thanks. -- This message posted from opensolaris.org
vattini giacomo
2009-Sep-02 13:33 UTC
[dtrace-discuss] tcptop_snv connp->conn_tcp != connp->conn_proto_priv.cp_tcp
I''ve tried under a 115 version as aSunOS opensolaris 5.11 snv_121 i86pc i386 i86pc Solaris on a 64bit is always remind to this error /usr/include/sys/modctl.h", line 308: major: argument mismatch dtrace: failed to compile script /dev/fd/3: "/usr/include/sys/modctl.h", line 308: syntax error near "1" I''ve seen some post on bugzilla about the problem,but was around april Any clue? -- This message posted from opensolaris.org