This systemtap script will get the execution path when it reaches 
set_task_cpu() in kernel 3.19.
set_task_cpu() is where perf sw cpu migration counter is updated.

#!/usr/bin/stap

probe kernel.function("set_task_cpu").call
{
    // running process
    // pr_name = execname()
    // pr_pid = pid()

    // task to be migrated
    _pid  = task_pid($p)
    _name = task_execname($p)
    _migr = $p->se->nr_migrations
    _ocpu = task_cpu($p)
    _ncpu = $new_cpu

    if (_ocpu != _ncpu) {
        printf("task %d (%s) (migr=%d) from (cpu=%d) to (cpu = %d)\n", _pid , 
_name , _migr, _ocpu, _ncpu)
        print_backtrace()
    }
}

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1575407

Title:
  Trusty + 3.19 (lts-vivid) PERF wrong cpu-migration counter

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1575407/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to