File: map_hash_interprocess.stp

package info (click to toggle)
systemtap 4.8-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 39,000 kB
  • sloc: cpp: 78,785; ansic: 62,419; xml: 49,443; exp: 42,735; sh: 11,254; python: 3,062; perl: 2,252; tcl: 1,305; makefile: 1,072; lisp: 105; awk: 101; asm: 91; java: 56; 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])
}