summaryrefslogtreecommitdiffstats
path: root/tapset
diff options
context:
space:
mode:
Diffstat (limited to 'tapset')
-rw-r--r--tapset/ChangeLog15
-rw-r--r--tapset/context.stp4
-rw-r--r--tapset/scsi.stp5
-rw-r--r--tapset/tcp.stp65
4 files changed, 56 insertions, 33 deletions
diff --git a/tapset/ChangeLog b/tapset/ChangeLog
index dae8b452..cf41c9cb 100644
--- a/tapset/ChangeLog
+++ b/tapset/ChangeLog
@@ -1,3 +1,18 @@
+2008-04-29 Frank Ch. Eigler <fche@elastic.org>
+
+ PR 6466
+ * tcp.stp (tcp_sockstate_str, tcp_sockopt_str): Initialize
+ number->string lookup tables here, instead of "probe begin(-1)"
+ block that can be elided/warned.
+
+2008-04-16 Wenji Huang <wenji.huang@oracle.com>
+
+ * scsi.stp (scsi.iodispatching): Correct for 2.6.25 kernel.
+
+2008-04-15 Martin Hunt <hunt@monkey>
+
+ * context.stp (print_backtrace, backtrace): Use MAXTRACE.
+
2008-03-21 Eugene Teo <eugeneteo@kernel.sg>
PR 5528
diff --git a/tapset/context.stp b/tapset/context.stp
index 4aa75158..dc560316 100644
--- a/tapset/context.stp
+++ b/tapset/context.stp
@@ -15,7 +15,7 @@ function print_regs () %{
function print_backtrace () %{
if (CONTEXT->regs) {
- _stp_stack_print(CONTEXT->regs, 1, CONTEXT->pi);
+ _stp_stack_print(CONTEXT->regs, 1, CONTEXT->pi, MAXTRACE);
} else {
_stp_printf("Systemtap probe: %s\n", CONTEXT->probe_point);
}
@@ -23,7 +23,7 @@ function print_backtrace () %{
function backtrace:string () %{ /* pure */
if (CONTEXT->regs)
- _stp_stack_snprint (THIS->__retvalue, MAXSTRINGLEN, CONTEXT->regs, 0, CONTEXT->pi);
+ _stp_stack_snprint (THIS->__retvalue, MAXSTRINGLEN, CONTEXT->regs, 0, CONTEXT->pi, MAXTRACE);
else
strlcpy (THIS->__retvalue, "", MAXSTRINGLEN);
%}
diff --git a/tapset/scsi.stp b/tapset/scsi.stp
index c9103cd6..7787b6d6 100644
--- a/tapset/scsi.stp
+++ b/tapset/scsi.stp
@@ -43,8 +43,13 @@ probe scsi.iodispatching
dev_id = $cmd->device->id
device_state = $cmd->device->sdev_state
data_direction = $cmd->sc_data_direction
+%( kernel_v >= "2.6.25" %?
+ request_buffer = $cmd->sdb->table->sgl
+ request_bufflen = $cmd->sdb->length
+%:
request_buffer = $cmd->request_buffer
request_bufflen = $cmd->request_bufflen
+%)
req_addr = $cmd->request
}
diff --git a/tapset/tcp.stp b/tapset/tcp.stp
index 3c3bd23b..7fa48000 100644
--- a/tapset/tcp.stp
+++ b/tapset/tcp.stp
@@ -71,7 +71,23 @@ function tcp_ts_get_info_state:long(sock:long)
CATCH_DEREF_FAULT();
%}
+global sockstate[13], sockstate_init_p
function tcp_sockstate_str:string (state:long) {
+ if (! sockstate_init_p) {
+ sockstate_init_p = 1
+ sockstate[1] = "TCP_ESTABLISHED"
+ sockstate[2] = "TCP_SYN_SENT"
+ sockstate[3] = "TCP_SYN_RECV"
+ sockstate[4] = "TCP_FIN_WAIT1"
+ sockstate[5] = "TCP_FIN_WAIT2"
+ sockstate[6] = "TCP_TIME_WAIT"
+ sockstate[7] = "TCP_CLOSE"
+ sockstate[8] = "TCP_CLOSE_WAIT"
+ sockstate[9] = "TCP_LAST_ACK"
+ sockstate[10] = "TCP_LISTEN"
+ sockstate[11] = "TCP_CLOSING"
+ sockstate[12] = "TCP_MAX_STATES"
+ }
return (state in sockstate ? sockstate[state] : "UNDEF")
}
@@ -105,7 +121,25 @@ function tcp_ts_get_info_rcv_mss:long(sock:long)
CATCH_DEREF_FAULT();
%}
+global sockopt[15], sockopt_init_p
function tcp_sockopt_str:string (optname:long) {
+ if (!sockopt_init_p) {
+ sockopt_init_p=1
+ sockopt[1] = "TCP_NODELAY"
+ sockopt[2] = "TCP_MAXSEG"
+ sockopt[3] = "TCP_CORK"
+ sockopt[4] = "TCP_KEEPIDLE"
+ sockopt[5] = "TCP_KEEPINTVL"
+ sockopt[6] = "TCP_KEEPCNT"
+ sockopt[7] = "TCP_SYNCNT"
+ sockopt[8] = "TCP_LINGER2"
+ sockopt[9] = "TCP_DEFER_ACCEPT"
+ sockopt[10] = "TCP_WINDOW_CLAMP"
+ sockopt[11] = "TCP_INFO"
+ sockopt[12] = "TCP_QUICKACK"
+ sockopt[13] = "TCP_CONGESTION"
+ sockopt[14] = "TCP_MD5SIG"
+ }
return (optname in sockopt ? sockopt[optname] : "UNDEF")
}
@@ -257,34 +291,3 @@ probe tcp.setsockopt.return = kernel.function("tcp_setsockopt").return {
ret = $return
}
-global sockopt[15], sockstate[13]
-
-probe begin(-1) {
- sockopt[1] = "TCP_NODELAY"
- sockopt[2] = "TCP_MAXSEG"
- sockopt[3] = "TCP_CORK"
- sockopt[4] = "TCP_KEEPIDLE"
- sockopt[5] = "TCP_KEEPINTVL"
- sockopt[6] = "TCP_KEEPCNT"
- sockopt[7] = "TCP_SYNCNT"
- sockopt[8] = "TCP_LINGER2"
- sockopt[9] = "TCP_DEFER_ACCEPT"
- sockopt[10] = "TCP_WINDOW_CLAMP"
- sockopt[11] = "TCP_INFO"
- sockopt[12] = "TCP_QUICKACK"
- sockopt[13] = "TCP_CONGESTION"
- sockopt[14] = "TCP_MD5SIG"
-
- sockstate[1] = "TCP_ESTABLISHED"
- sockstate[2] = "TCP_SYN_SENT"
- sockstate[3] = "TCP_SYN_RECV"
- sockstate[4] = "TCP_FIN_WAIT1"
- sockstate[5] = "TCP_FIN_WAIT2"
- sockstate[6] = "TCP_TIME_WAIT"
- sockstate[7] = "TCP_CLOSE"
- sockstate[8] = "TCP_CLOSE_WAIT"
- sockstate[9] = "TCP_LAST_ACK"
- sockstate[10] = "TCP_LISTEN"
- sockstate[11] = "TCP_CLOSING"
- sockstate[12] = "TCP_MAX_STATES"
-}