NAME
sig - task signal handling
SYNOPSIS
sig [[-l] | [-s sigset]] | [pid | taskp] ...
DESCRIPTION
This command displays signal-handling data of one or more tasks. Multiple
task or PID numbers may be entered; if no arguments are entered, the signal
handling data of the current context will be displayed. The default display
shows:
1. Whether the task has an unblocked signal pending.
2. The contents of the "signal" and "blocked" sigset_t structures
from the task_struct, both of which are represented as a 64-bit
hexadecimal value.
3. A formatted dump of the "sig" signal_struct structure referenced by
the task_struct. For each defined signal, it shows the sigaction
structure address, the signal handler, the signal sigset_t mask
(also expressed as a 64-bit hexadecimal value), and the flags.
4. For each queued signal, if any, its signal number and associated
siginfo structure address.
The -l option lists the signal numbers and their name(s). The -s option
translates a 64-bit hexadecimal value representing the contents of a
sigset_t structure into the signal names whose bits are set.
pid a process PID.
taskp a hexadecimal task_struct pointer.
-l displays the defined signal numbers and names.
-s sigset translates a 64-bit hexadecimal value representing a sigset_t
into a list of signal names associated with the bits set.
EXAMPLES
Dump the signal-handling data of PID 614:
crash> sig 614
PID: 614 TASK: c6f26000 CPU: 1 COMMAND: "httpd"
SIGPENDING: no
SIGNAL: 0000000000000000
BLOCKED: 0000000000000000
SIGNAL_STRUCT: c1913800 COUNT: 1
SIG SIGACTION HANDLER MASK FLAGS
[1] c1913804 8057c98 0000000000000201 0
[2] c1913818 8057c8c 0000000000000000 0
[3] c191382c SIG_DFL 0000000000000000 0
[4] c1913840 8057bd8 0000000000000000 80000000 (SA_RESETHAND)
[5] c1913854 SIG_DFL 0000000000000000 0
[6] c1913868 8057bd8 0000000000000000 80000000 (SA_RESETHAND)
[7] c191387c 8057bd8 0000000000000000 80000000 (SA_RESETHAND)
[8] c1913890 SIG_DFL 0000000000000000 0
[9] c19138a4 SIG_DFL 0000000000000000 0
[10] c19138b8 8057c98 0000000000000201 0
[11] c19138cc 8057bd8 0000000000000000 80000000 (SA_RESETHAND)
[12] c19138e0 SIG_DFL 0000000000000000 0
[13] c19138f4 SIG_IGN 0000000000000000 0
[14] c1913908 SIG_DFL 0000000000000000 0
[15] c191391c 8057c8c 0000000000000000 0
[16] c1913930 SIG_DFL 0000000000000000 0
[17] c1913944 SIG_DFL 0000000000000000 0
[18] c1913958 SIG_DFL 0000000000000000 0
[19] c191396c SIG_DFL 0000000000000000 0
[20] c1913980 SIG_DFL 0000000000000000 0
[21] c1913994 SIG_DFL 0000000000000000 0
[22] c19139a8 SIG_DFL 0000000000000000 0
[23] c19139bc SIG_DFL 0000000000000000 0
[24] c19139d0 SIG_DFL 0000000000000000 0
[25] c19139e4 SIG_DFL 0000000000000000 0
[26] c19139f8 SIG_DFL 0000000000000000 0
[27] c1913a0c SIG_DFL 0000000000000000 0
[28] c1913a20 SIG_DFL 0000000000000000 0
[29] c1913a34 SIG_DFL 0000000000000000 0
[30] c1913a48 SIG_DFL 0000000000000000 0
[31] c1913a5c SIG_DFL 0000000000000000 0
SIGQUEUE: (empty)
Translate the sigset_t mask value, cut-and-pasted from the signal handling
data from signals 1 and 10 above:
crash> sig -s 0000000000000201
SIGHUP SIGUSR1
List the signal numbers and their names:
crash> sig -l
[1] SIGHUP
[2] SIGINT
[3] SIGQUIT
[4] SIGILL
[5] SIGTRAP
[6] SIGABRT/SIGIOT
[7] SIGBUS
[8] SIGFPE
[9] SIGKILL
[10] SIGUSR1
[11] SIGSEGV
[12] SIGUSR2
[13] SIGPIPE
[14] SIGALRM
[15] SIGTERM
[16] SIGSTKFLT
[17] SIGCHLD/SIGCLD
[18] SIGCONT
[19] SIGSTOP
[20] SIGTSTP
[21] SIGTTIN
[22] SIGTTOU
[23] SIGURG
[24] SIGXCPU
[25] SIGXFSZ
[26] SIGVTALRM
[27] SIGPROF
[28] SIGWINCH
[29] SIGIO/SIGPOLL
[30] SIGPWR
[31] SIGSYS
|