problem when run tcp/udp probing script

Frank Ch. Eigler fche@redhat.com
Mon Mar 19 13:54:00 GMT 2012


ch huang <justlooks@gmail.com> writes:

> [...]
> probe tcp.recvmsg {
> printf("%s: TCP: Receiving message. Socket %d. Size %d\n", execname(),
> sock, size)
> }
> [...]
> but why the value of socket is negative?
>
> mysqld: TCP: Receiving message. Socket -131937697852800. Size 4
> mysqld: TCP: Receiving message. Socket -131937398508736. Size 16384
> mysqld: TCP: Receiving message. Socket -131938374336384. Size 1
> mysqld: TCP: Receiving message. Socket -131937398508736. Size 16384

Because sock is a pointer to a kernel structure.  If you print it as
%p, you'll see them as pretty reasonable values 0xffff8800b410c080
etc.

- FChE



More information about the Systemtap mailing list