Bug 18551 - the migrate.stp example doesn't work when parameters are inlined
Summary: the migrate.stp example doesn't work when parameters are inlined
Status: RESOLVED FIXED
Alias: None
Product: systemtap
Classification: Unclassified
Component: testsuite (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Unassigned
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-06-17 16:30 UTC by David Smith
Modified: 2015-06-17 16:36 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Smith 2015-06-17 16:30:24 UTC
On some kernels (like 3.10.0-229.el7.ppc64), the testsuite/systemtap.examples/process/migrate.stp example script can't be compiled because some of the orguments to the __migrate_task() kernel function can't be found when the function is inlined:

====
# stap -p4 migrate.stp bash
semantic error: not accessible at this address (pc: 0xc00000000011639c) [man error::dwarf]: identifier '$p' at migrate.stp:22:24
        dieoffset: 0xb07bbd from unknown debug file for kernel
        function: sched_info_queued at kernel/sched/stats.h:103 inlined by enqueue_task at kernel/sched/core.c:786 inlined by __migrate_task at kernel/sched/core.c:5102 inlined by migrate_tasks at kernel/sched/core.c:5252 inlined by migration_call at kernel/sched/core.c:5504
        alternative locations: [0xc000000000116450,0xc000000000116540], [0xc000000000116740,0xc00000000011696c], [0xc0000000001169a4,0xc0000000001169c4], [0xc0000000001169d4,0xc0000000001169e0], [0xc000000000116a2c,0xc000000000116a70]
        source:   comm = kernel_string($p->comm);
                                       ^

Pass 2: analysis failed.  [man error::pass2]
====

However, there is an equivalent tracepoint, called 'sched_migrate_task' available.
Comment 1 David Smith 2015-06-17 16:36:25 UTC
Fixed in commit 141fdab.