This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tapsets/13501] Some arguments for 'stap -L "*, *.*, *.*.*" ' probe points not found


http://sourceware.org/bugzilla/show_bug.cgi?id=13501

--- Comment #4 from David Smith <dsmith at redhat dot com> 2011-12-15 16:13:50 UTC ---
The following set of errors are a bit bogus, but I'm not sure how to quiet
them.

====
# stap -L '__scheduler.ctxswitch.kp'
semantic error: unable to find local 'new' near pc 0xffffffff8150aff7  in 
context_switch kernel/sched.c ( (alternatives: $next $prev $rq): identifier
'$new' at /usr/local/share/systemtap/tapset/scheduler.stp:174:19
        source:         next_priority = $new->prio
                                        ^
semantic error: unable to find local 'new' near pc 0xffffffff8150aff7  in 
context_switch kernel/sched.c ( (alternatives: $next $prev $rq): identifier
'$new' at :175:14
        source:         next_pid = $new->tgid
                                   ^
semantic error: unable to find local 'new' near pc 0xffffffff8150aff7  in 
context_switch kernel/sched.c ( (alternatives: $next $prev $rq): identifier
'$new' at :176:14
        source:         next_tid = $new->pid
                                   ^
semantic error: unable to find local 'new' near pc 0xffffffff8150aff7  in 
context_switch kernel/sched.c ( (alternatives: $next $prev $rq): identifier
'$new' at :177:15
        source:         next_task = $new
                                    ^
semantic error: unable to find local 'new' near pc 0xffffffff8150aff7  in 
context_switch kernel/sched.c ( (alternatives: $next $prev $rq): identifier
'$new' at :178:34
        source:         next_task_name = task_execname($new)
                                                       ^
semantic error: unable to find local 'new' near pc 0xffffffff8150aff7  in 
context_switch kernel/sched.c ( (alternatives: $next $prev $rq): identifier
'$new' at :179:19
        source:         nexttsk_state = $new->state
                                        ^
semantic error: unresolved type : identifier 'next_priority' at :174:3
        source:         next_priority = $new->prio
                        ^
semantic error: unresolved type : identifier 'next_pid' at :175:3
        source:         next_pid = $new->tgid
                        ^
semantic error: unresolved type : identifier 'next_tid' at :176:3
        source:         next_tid = $new->pid
                        ^
semantic error: unresolved type : identifier 'next_task' at :177:3
        source:         next_task = $new
                        ^
semantic error: unresolved type : identifier 'nexttsk_state' at :179:3
        source:         nexttsk_state = $new->state
                        ^
semantic error: unresolved type : identifier 'next_priority' at :158:3
        source:         next_priority = $next->prio
                        ^
semantic error: unresolved type : identifier 'next_pid' at :159:3
        source:         next_pid = $next->tgid
                        ^
semantic error: unresolved type : identifier 'next_tid' at :160:3
        source:         next_tid = $next->pid
                        ^
semantic error: unresolved type : identifier 'next_task' at :161:3
        source:         next_task = $next
                        ^
semantic error: unresolved type : identifier 'nexttsk_state' at :163:3
        source:         nexttsk_state = $next->state
                        ^
__scheduler.ctxswitch.kp prev_priority:long prev_pid:long prev_tid:long
prev_task:long prev_task_name:string prevtsk_state:long next_priority:unknown
next_pid:unknown next_tid:unknown next_task:unknown next_task_name:string
nexttsk_state:unknown $prev:struct task_struct* $rq:struct rq*
====

The above errors occur because on RHEL6 systemtap can't find the 'next'
argument of the inlined kernel function 'context_switch':

====
# stap -L 'kernel.function("context_switch").*'
kernel.function("context_switch@kernel/sched.c:2917").inline $prev:struct
task_struct* $rq:struct rq*
====

But, on RHEL6 the '__scheduler.ctxswitch.kp' probe alias isn't used - the
'scheduler.ctxswitch' prefers the '__scheduler.ctxswitch.tp' (tracepoint) probe
alias over the '__scheduler.ctxswitch.kp' (kprobe) probe alias.

====
# stap -L '__scheduler.ctxswitch.tp'
__scheduler.ctxswitch.tp __tracepoint_arg_prev:long __tracepoint_arg_next:long
next_pid:long next_tid:long next_task:long next_task_name:string
nexttsk_state:long next_priority:long prev_priority:long prev_pid:long
prev_tid:long prev_task:long prev_task_name:string prevtsk_state:long
$rq:struct rq* $prev:struct task_struct* $next:struct task_struct*


# stap -L 'scheduler.ctxswitch'
scheduler.ctxswitch __tracepoint_arg_prev:long __tracepoint_arg_next:long
next_pid:long next_tid:long next_task:long next_task_name:string
nexttsk_state:long next_priority:long prev_priority:long prev_pid:long
prev_tid:long prev_task:long prev_task_name:string prevtsk_state:long
name:string $rq:struct rq* $prev:struct task_struct* $next:struct task_struct*
====

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]