samples/powerpc-e500v2-linux-gnuspe/reported.by
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Dec 13 23:32:39 2011 +0100 (2011-12-13)
changeset 2807 4193d6e6a174
parent 2290 ba82eb173bd4
permissions -rw-r--r--
scripts: fix dumping execution backtrace

Dumping the backtrace has been broken since changeset #652e56d6d35a:
scripts: execute each steps in a subshell

We can spawn sub-sub-shells in some cases.

The way the fault handler works is to dump the backtrace, but to avoid
printing it once for every sub-shell (which could get quite confusing),
it simply exits when it detects that it is being run in a sub-shell,
leaving to the top-level shell the work to dump the backtrace.

Because each step is executed in its own sub-shell, the variable arrays
that contain the step name, the source file and line number, are lost
when exiting the per-step sub-shell.

Hence, the backtrace is currently limited to printing only the top-level
main procedure of the shell.

Fix this thus:
- when dumping the bckatraces for the steps & the functions, remember
it was dumped, and only dump it if it was not already dumped
- at the top-level shell, print the hints

Also, rename the top-level step label.

Reported-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@2139
     1
reporter_name="Anthony Foiani <anthony.foiani@gmail.com>"
yann@2139
     2
reporter_url="http://sourceware.org/ml/crossgcc/2010-09/msg00100.html"
yann@2290
     3
reporter_comment="This is a sample config file for Freescale e500v2 processors (e.g., MPC8548,
yann@2369
     4
MPC8572). It uses eglibc (for e500/SPE patches) and a recent gcc (4.6.0,
yann@2173
     5
for e500v2 DPFP support) and will generate appropriate dual-precision
yann@2173
     6
floating point instructions by default.
yann@935
     7
yann@2173
     8
Note: If building a Linux kernel with this toolchain, you will want to make
yann@2173
     9
sure -mno-spe AND -mspe=no are passed to gcc to prevent SPE ABI/instructions
yann@2173
    10
from getting into the kernel (which is currently unsupported). At this time,
yann@2173
    11
the kernel build system properly passes those two options, but older kernels
yann@2173
    12
were only passing -mno-spe by default."