--- crash-4.0-3.3/help.c 2006-09-07 21:00:08.000000000 +0200 +++ crash-4.0-3.3-patch/help.c 2006-09-15 19:57:14.000000000 +0200 @@ -2766,16 +2766,16 @@ " 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", +" 1. 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.", +" 2. Whether the task has an unblocked signal pending.", +" 3. The contents of the \"blocked\" and \"signal\" sigset_t structures", +" from the task_struct/signal_struct, both of which are represented ", +" as a 64-bit hexadecimal value.", +" 4. For each queued signal (private and/or shared), 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", @@ -2787,52 +2787,54 @@ " -s sigset translates a 64-bit hexadecimal value representing a sigset_t", " into a list of signal names associated with the bits set.", "\nEXAMPLES", -" Dump the signal-handling data of PID 614:\n", -" %s> sig 614", -" PID: 614 TASK: c6f26000 CPU: 1 COMMAND: \"httpd\"", -" SIGPENDING: no", -" SIGNAL: 0000000000000000", -" BLOCKED: 0000000000000000", -" SIGNAL_STRUCT: c1913800 COUNT: 1", +" Dump the signal-handling data of PID 8970:\n", +" %s> sig 8970", +" PID: 8970 TASK: f67d8560 CPU: 1 COMMAND: \"procsig\"", +" SIGNAL_STRUCT: f6018680 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)", +" [1] f7877684 SIG_DFL 0000000000000000 0 ", +" [2] f7877698 SIG_DFL 0000000000000000 0 ", +" ...", +" [8] f7877710 SIG_DFL 0000000000000000 0 ", +" [9] f7877724 SIG_DFL 0000000000000000 0 ", +" [10] f7877738 804867a 0000000000000000 80000000 (SA_RESETHAND)", +" [11] f787774c SIG_DFL 0000000000000000 0 ", +" [12] f7877760 804867f 0000000000000000 10000004 (SA_SIGINFO|SA_RESTART)", +" [13] f7877774 SIG_DFL 0000000000000000 0 ", +" ...", +" [31] f78778dc SIG_DFL 0000000000000000 0 ", +" [32] f78778f0 SIG_DFL 0000000000000000 0 ", +" [33] f7877904 SIG_DFL 0000000000000000 0 ", +" [34] f7877918 804867f 0000000000000000 10000004 (SA_SIGINFO|SA_RESTART)", +" [35] f787792c SIG_DFL 0000000000000000 0 ", +" [36] f7877940 SIG_DFL 0000000000000000 0 ", +" ...", +" [58] f7877af8 SIG_DFL 0000000000000000 0 ", +" [59] f7877b0c SIG_DFL 0000000000000000 0 ", +" [60] f7877b20 SIG_DFL 0000000000000000 0 ", +" [61] f7877b34 SIG_DFL 0000000000000000 0 ", +" [62] f7877b48 SIG_DFL 0000000000000000 0 ", +" [63] f7877b5c SIG_DFL 0000000000000000 0 ", +" [64] f7877b70 804867f 0000000000000000 10000004 (SA_SIGINFO|SA_RESTART)", +" SIGPENDING: no", +" BLOCKED: 8000000200000800", +" PRIVATE_PENDING", +" SIGNAL: 0000000200000800", +" SIGQUEUE: SIG SIGINFO ", +" 12 f51b9c84", +" 34 f51b9594", +" SHARED_PENDING", +" SIGNAL: 8000000000000800", +" SIGQUEUE: SIG SIGINFO ", +" 12 f51b9188", +" 64 f51b9d18", +" 64 f51b9500", " ", " Translate the sigset_t mask value, cut-and-pasted from the signal handling", " data from signals 1 and 10 above:", " ", -" %s> sig -s 0000000000000201", -" SIGHUP SIGUSR1", +" %s> sig -s 800A000000000201", +" SIGHUP SIGUSR1 SIGRTMAX-14 SIGRTMAX-12 SIGRTMAX", " ", " List the signal numbers and their names:", " ", @@ -2868,6 +2870,40 @@ " [29] SIGIO/SIGPOLL", " [30] SIGPWR", " [31] SIGSYS", +" [32] SIGRTMIN", +" [33] SIGRTMIN+1", +" [34] SIGRTMIN+2", +" [35] SIGRTMIN+3", +" [36] SIGRTMIN+4", +" [37] SIGRTMIN+5", +" [38] SIGRTMIN+6", +" [39] SIGRTMIN+7", +" [40] SIGRTMIN+8", +" [41] SIGRTMIN+9", +" [42] SIGRTMIN+10", +" [43] SIGRTMIN+11", +" [44] SIGRTMIN+12", +" [45] SIGRTMIN+13", +" [46] SIGRTMIN+14", +" [47] SIGRTMIN+15", +" [48] SIGRTMIN+16", +" [49] SIGRTMAX-15", +" [50] SIGRTMAX-14", +" [51] SIGRTMAX-13", +" [52] SIGRTMAX-12", +" [53] SIGRTMAX-11", +" [54] SIGRTMAX-10", +" [55] SIGRTMAX-9", +" [56] SIGRTMAX-8", +" [57] SIGRTMAX-7", +" [58] SIGRTMAX-6", +" [59] SIGRTMAX-5", +" [60] SIGRTMAX-4", +" [61] SIGRTMAX-3", +" [62] SIGRTMAX-2", +" [63] SIGRTMAX-1", +" [64] SIGRTMAX", + NULL }; --- crash-4.0-3.3/task.c 2006-09-15 19:59:15.000000000 +0200 +++ crash-4.0-3.3-patch/task.c 2006-09-15 17:33:02.000000000 +0200 @@ -5972,12 +5972,12 @@ fprintf(fp, "\n"); } fprintf(fp, "SIGPENDING: %s\n", sigpending ? "yes" : "no"); + fprintf(fp, " BLOCKED: %016llx\n", blocked); if (VALID_MEMBER(signal_struct_shared_pending) ) fprintf(fp, "PRIVATE_PENDING\n"); fprintf(fp, " SIGNAL: %016llx\n", sigset); - fprintf(fp, " BLOCKED: %016llx\n", blocked); if (VALID_MEMBER(task_struct_sigqueue)) sigqueue = ULONG(tt->task_struct +