-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy patherrno.stp
More file actions
37 lines (33 loc) · 725 Bytes
/
errno.stp
File metadata and controls
37 lines (33 loc) · 725 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#! /usr/bin/env stap
#
# Copyright (C) 2010 Red Hat, Inc.
# By Dominic Duval, Red Hat Inc.
# dduval@redhat.com
#
# Monitors errors returned by system calls.
#
# USAGE: stap errno.stp
#
global execname, errors
probe syscall.*.return {
errno = $return
if ( errno < 0 ) {
p = pid()
execname[p]=execname();
errors[p, errno, name] <<< 1
}
}
probe end {
printf("\n")
printf("%8s %-32s %-16s %-12s %8s\n",
"PID", "Syscall", "Process", "Error", "Count")
foreach ([pid, error, thissyscall] in errors- limit 20) {
printf("%8d %-32s %-16s %-12s %8d\n",
pid,
thissyscall,
execname[pid],
error ? errno_str(error) : "",
@count(errors[pid, error, thissyscall])
)
}
}