----- Original Message -----
Hi Dave,
When opening an s390(x) dump where the kernel has panic'ed, I currently
get the following warnings:
WARNING: multiple active tasks have called die and/or panic
WARNING: multiple active tasks have called die
In task.c we call "foreach bt -t" and check if we find "die" on the
stack. When
doing this on s390 with the "-t" option normally we find multiple die() calls
for one single task:
crash> foreach bt -t | grep "die at"
[ 9ca7f7f0] die at 100f26
[ 9ca7f8f0] die at 100f26
[ 9ca7f9b8] die at 100f26
[ 9ca7fa40] die at 100ee6
[ 9ca7fa90] die at 100f26
The current code then assumes that multiple tasks have called die().
This patch fixes this problem by an additional check that allows multiple
occurrences of the die() call on the stack (with bt -t) for one task.
Strange -- has this always happened on s390's? And I wonder why
why there are multiple instances on the stack? What does the actual
backtrace look like? In any case, I guess the patch makes sense,
although I wonder why nobody else has ever reported this.
By any chance, given that this must be zdump-type dumpfile (?), does
the "dh_cpu_id" member in the header correlate to the panic cpu? Or
is there any other way that the panic'ing task can be ascertained from
"S390D" dumpfiles such that get_dumpfile_panic_task() can do the job?
Dave