File: lock-pushdown-bugs_2.stp

package info (click to toggle)
systemtap 5.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 47,556 kB
  • sloc: cpp: 81,117; ansic: 54,933; xml: 49,795; exp: 43,595; sh: 11,526; python: 5,003; perl: 2,252; tcl: 1,312; makefile: 1,006; javascript: 149; lisp: 105; awk: 101; asm: 91; java: 70; sed: 16
file content (19 lines) | stat: -rw-r--r-- 456 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
@define assert_lock(v) %( if (%{ c->locked %} != @v) { error(sprintf("locked mismatch, expected %d, actual %d", @v, %{ c->locked %})) } %)

global stats;

probe process.function("main") {
    my_pid = pid();
    v = @var("argc");
    @assert_lock(0);
    if (v == 1) {
        @assert_lock(0);
        delete stats;
    }
    @assert_lock(1);
    stats[my_pid] <<< v;
    @assert_lock(1);
    stats[my_pid] <<< v;
    @assert_lock(2);
    println("ok");
}