File: map_hash_interprocess.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 (20 lines) | stat: -rw-r--r-- 552 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# This test makes sure that interprocess hashing works, especially for stapdyn,
# so for example the stap_hash_seed must be correctly shared.

global key1 = "foo"
global key2 = 42
global value = 0x123456789ABCDEF

global array

# The array write occurs in the target context
probe process.begin {
  array[key1, key2] = value
}

# The array read occurs in neutral context (stapio/stapdyn).
# It's also keyed manually, because 'foreach' doesn't exercise hashing.
probe end {
  printf("array[\"%s\", %d]: %#x\n",
         key1, key2, array[key1, key2])
}