1 1.1 christos This is an example of the errinfo program, which prints details on syscall 2 1.1 christos failures. 3 1.1 christos 4 1.1 christos By default it "snoops" syscall failures and prints their details, 5 1.1 christos 6 1.1 christos # ./errinfo 7 1.1 christos EXEC SYSCALL ERR DESC 8 1.1 christos wnck-applet read 11 Resource temporarily unavailable 9 1.1 christos Xorg read 11 Resource temporarily unavailable 10 1.1 christos nautilus read 11 Resource temporarily unavailable 11 1.1 christos Xorg read 11 Resource temporarily unavailable 12 1.1 christos dsdm read 11 Resource temporarily unavailable 13 1.1 christos Xorg read 11 Resource temporarily unavailable 14 1.1 christos Xorg pollsys 4 interrupted system call 15 1.1 christos mozilla-bin lwp_park 62 timer expired 16 1.1 christos gnome-netstatus- ioctl 12 Not enough core 17 1.1 christos mozilla-bin lwp_park 62 timer expired 18 1.1 christos Xorg read 11 Resource temporarily unavailable 19 1.1 christos mozilla-bin lwp_park 62 timer expired 20 1.1 christos [...] 21 1.1 christos 22 1.1 christos which is useful to see these events live, but can scroll off the screen 23 1.1 christos somewhat rapidly.. so, 24 1.1 christos 25 1.1 christos 26 1.1 christos 27 1.1 christos The "-c" option will count the number of errors. Hit Ctrl-C to stop the 28 1.1 christos sample. For example, 29 1.1 christos 30 1.1 christos # ./errinfo -c 31 1.1 christos Tracing... Hit Ctrl-C to end. 32 1.1 christos ^C 33 1.1 christos EXEC SYSCALL ERR COUNT DESC 34 1.1 christos nscd fcntl 22 1 Invalid argument 35 1.1 christos xscreensaver read 11 1 Resource temporarily unavailable 36 1.1 christos inetd lwp_park 62 1 timer expired 37 1.1 christos svc.startd lwp_park 62 1 timer expired 38 1.1 christos svc.configd lwp_park 62 1 timer expired 39 1.1 christos ttymon ioctl 25 1 Inappropriate ioctl for device 40 1.1 christos gnome-netstatus- ioctl 12 2 Not enough core 41 1.1 christos mozilla-bin lwp_kill 3 2 No such process 42 1.1 christos mozilla-bin connect 150 5 operation now in progress 43 1.1 christos svc.startd portfs 62 8 timer expired 44 1.1 christos java_vm lwp_cond_wait 62 8 timer expired 45 1.1 christos soffice.bin read 11 9 Resource temporarily unavailable 46 1.1 christos gnome-terminal read 11 23 Resource temporarily unavailable 47 1.1 christos mozilla-bin recv 11 26 Resource temporarily unavailable 48 1.1 christos nautilus read 11 26 Resource temporarily unavailable 49 1.1 christos gnome-settings-d read 11 26 Resource temporarily unavailable 50 1.1 christos gnome-smproxy read 11 34 Resource temporarily unavailable 51 1.1 christos gnome-panel read 11 42 Resource temporarily unavailable 52 1.1 christos dsdm read 11 112 Resource temporarily unavailable 53 1.1 christos metacity read 11 128 Resource temporarily unavailable 54 1.1 christos mozilla-bin lwp_park 62 133 timer expired 55 1.1 christos Xorg pollsys 4 147 interrupted system call 56 1.1 christos wnck-applet read 11 179 Resource temporarily unavailable 57 1.1 christos mozilla-bin read 11 258 Resource temporarily unavailable 58 1.1 christos Xorg read 11 1707 Resource temporarily unavailable 59 1.1 christos 60 1.1 christos Ok, so Xorg has received 1707 of the same type of error for the syscall read(). 61 1.1 christos 62 1.1 christos 63 1.1 christos 64 1.1 christos The "-n" option lets us match on one type of process only. In the following 65 1.1 christos we match processes that have the name "mozilla-bin", 66 1.1 christos 67 1.1 christos # ./errinfo -c -n mozilla-bin 68 1.1 christos Tracing... Hit Ctrl-C to end. 69 1.1 christos ^C 70 1.1 christos EXEC SYSCALL ERR COUNT DESC 71 1.1 christos mozilla-bin getpeername 134 1 Socket is not connected 72 1.1 christos mozilla-bin recv 11 2 Resource temporarily unavailable 73 1.1 christos mozilla-bin lwp_kill 3 2 No such process 74 1.1 christos mozilla-bin connect 150 5 operation now in progress 75 1.1 christos mozilla-bin lwp_park 62 207 timer expired 76 1.1 christos mozilla-bin read 11 396 Resource temporarily unavailable 77 1.1 christos 78 1.1 christos 79 1.1 christos 80 1.1 christos The "-p" option lets us examine one PID only. The following example examines 81 1.1 christos PID 1119, 82 1.1 christos 83 1.1 christos # ./errinfo -c -p 1119 84 1.1 christos Tracing... Hit Ctrl-C to end. 85 1.1 christos ^C 86 1.1 christos EXEC SYSCALL ERR COUNT DESC 87 1.1 christos Xorg pollsys 4 47 interrupted system call 88 1.1 christos Xorg read 11 669 Resource temporarily unavailable 89 1.1 christos 90 1.1 christos 91