TAPSET::SOCKET(3stap) TAPSET::SOCKET(3stap)
NAME
tapset::socket - systemtap socket probe points
DESCRIPTION
This family of probe points is used to probe socket activities. It contains the following probe points:
socket.send
Fires at the conclusion of sending a message on a socket. This probe alias includes the socket.sendmsg.return,
socket.aio_write.return and socket.writev.return probes (these probes should catch all messages sent on sockets). The arguments
supplied at the beginning of the send are cached and made available in this probe.
Context:
The message sender.
Arguments:
name
Name of this probe.
size
Size of message sent (in bytes) or error code if success == 0
protocol
Protocol used on the socket. Use sock_prot_num2str(protocol)
to convert to a string.
Common values include:
0 - IP (Internet Protocol, local interprocess communications)
6 - TCP (Transmission Control Protocol)
17 - UDP (User Datagram Protocol)
132 - SCTP (Stream Control Transmission Protocol)
Refer to /etc/protocols for a complete list of possible values.
family
Protocol family of the socket (from include/linux/socket.h).
Use sock_fam_num2str(family) to convert to a string.
Possible values are:
0 - UNSPEC (Unspecified)
1 - LOCAL (Unix domain/local sockets)
2 - INET (Internet Protocol (IP))
3 - AX25 (Amateur Radio AX.25)
4 - IPX (Novell IPX)
5 - APPLETALK (AppleTalk DDP)
6 - NETROM (Amateur Radio NET/ROM)
7 - BRIDGE (Multiprotocol bridge)
8 - ATMPVC (ATM PVCs)
9 - X25 (X.25)
10 - INET6 (IP version 6)
11 - ROSE (Amateur Radio X.25 PLP)
12 - DECNET (Reserved for DECnet project)
13 - NETBEUI (Reserved for 802.2LLC project)
14 - SECURITY (Security callback pseudo AF)
15 - KEY (key management API)
16 - NETLINK (Netlink protocol)
17 - PACKET (Packet family)
18 - ASH (Ash)
19 - ECONET (Acorn Econet)
20 - ATMSVC (ATM SVCs)
22 - SNA (Linux SNA Project)
23 - IRDA (IRDA sockets)
24 - PPP0X (PPPoX sockets)
25 - WANPIPE (Wanpipe API Sockets)
26 - LLC (Linux LLC)
30 - TIPC (TIPC sockets)
31 - BLUETOOTH (Bluetooth sockets)
state
State of the socket. Use sock_state_num2str(state) to convert
to a string.
Possible values are:
0 - FREE (not allocated)
1 - UNCONNECTED (unconnected to any socket)
2 - CONNECTING (in the process of connecting)
3 - CONNECTED (connected to a socket)
4 - DISCONNECTING (in the process of disconnecting)
flags
Socket flags. Use sock_flags_num2str(flags) to convert
to a string.
Possible values are:
0 - ASYNC_NOSPACE
1 - ASYNC_WAITDATA
2 - NOSPACE
3 - PASSCRED
4 - PASSSEC
type
Socket type. Use sock_type_num2str(type) to convert
to a string.
Possible values are:
1 - STREAM (stream connection socket)
2 - DGRAM (datagram connectionless socket)
3 - RAW (raw socket)
4 - RDM (reliably-deliverd message)
5 - SEQPACKET (sequential packet socket)
6 - DCCP (datagram congestion control protocol socket)
10 - PACKET (Linux-specific way of getting packets at device level)
success
Was send successful?
Possible values are:
1 - Yes
0 - No
socket.receive
Fires at the conclusion of receiving a message on a socket. This probe alias includes the socket.recvmsg.return,
socket.aio_read.return and socket.readv.return probes (these probes should catch all messages received on sockets). The arguments
supplied at the beginning of the receive are cached and made available in this probe.
Context:
The message receiver.
Arguments:
Same as socket.send.
socket.sendmsg
Fires when the sock_sendmsg() kernel function is entered.
Context:
The message sender.
Arguments:
Same as socket.send, with the following exceptions:
size
Size of message being sent (in bytes).
success
Not used.
socket.sendmsg.return
Fires when the sock_sendmsg() kernel function returns.
Context:
The message sender.
Arguments:
Same as socket.send
socket.recvmsg
Fires when the sock_recvmsg() kernel function is entered.
Context:
The message receiver.
Arguments:
Same as socket.receive, with the following exceptions:
size
Size of message being received (in bytes).
success
Not used.
socket.recvmsg.return
Fires when the sock_recvmsg() kernel function returns.
Context:
The message receiver.
Arguments:
Same as socket.receive.
socket.aio_write
Fires when the sock_aio_write() kernel function is entered.
Context:
The message sender.
Arguments:
Same as socket.send, with the following exceptions:
size
Size of message being sent (in bytes).
success
Not used.
socket.aio_write.return
Fires when the sock_aio_write() kernel function returns.
Context:
The message sender.
Arguments:
Same as socket.send.
socket.aio_read
Fires when the sock_aio_read() kernel function is entered.
Context:
The message receiver.
Arguments:
Same as socket.receive, with the following exceptions:
size
Size of message being received (in bytes).
success
Not used.
socket.aio_read.return
Fires when the sock_aio_read() kernel function returns.
Context:
The message receiver.
Arguments:
Same as socket.receive.
socket.writev
Fires when the sock_writev() kernel function is entered.
Context:
The message sender.
Arguments:
Same as socket.send, with the following exceptions:
size
Size of message being sent (in bytes).
success
Not used.
socket.writev.return
Fires when the sock_writev() kernel function returns.
Context:
The message sender.
Arguments:
Same as socket.send.
socket.readv
Fires when the sock_readv() kernel function is entered.
Context:
The message receiver.
Arguments:
Same as socket.receive, with the following exceptions:
size
Size of message being received (in bytes).
success
Not used.
socket.readv.return
Fires when the sock_readv() kernel function returns.
Context:
The message receiver.
Arguments:
Same as socket.receive.
socket.create
Fires at the beginning of creating a socket.
Context:
The socket creator.
Arguments:
name
protocol
family
type
See socket.send.
requester
Requester type.
Possible values are:
1 - kernel
0 - user
socket.create.return
Fires at the end of creating a socket.
Context:
The socket creator.
Arguments:
Same as socket.create, plus:
err
Return code.
Possible values are:
0 - success
< 0 - error
success
Was the socket created successfully?
Possible values are:
1 - Yes
0 - No
socket.close
Fires at the beginning of closing a socket.
Context:
The socket closer.
Arguments:
name
protocol
family
state
flags
type
See socket.send.
socket.close.return
Fires at the end of closing a socket.
Context:
The socket closer.
Arguments:
name
Name of this probe.
SEE ALSO
stap(1), stapprobes(3stap), stapfuncs(3stap)
IBM
TAPSET::SOCKET(3stap)