[PATCH] score: Split _Terminate and call _Terminate_CPU_Fatal_halt.

Chris Johns chrisj at rtems.org
Mon Apr 28 02:44:08 UTC 2014


On 28/04/2014 12:01 pm, Joel Sherrill wrote:
> I do not know if this is helpful but the sim-scripts gdb startup file
> sets breakpoints on bad places to get to like __assert. the one on
> _Terminate is conditional on there being non-zero status.

Everything should end up in _Terminate so I am currently only breaking 
on it (well the CPU halt version) and consider anything other path as a 
lock up and test failure. The problem with the break point on _Terminate 
is tests such as the stackchk raise a fatal error shut down as it is 
suppose to and the test has hooked a fatal error extension so it can 
print the 'END' label. If you break on _Terminate you stop at the start 
of the function and the extensions are not run and so you miss the END 
tag and the test is logged as a fail. It effected somewhere between 20 
to 30 tests but that is a guess.

The splitting allows the standard code to be tested and used without any 
changes and I think this is important.

This is independent of the weak attribute part of the patch which I am 
happy to leave out. The split is something I will argue for more strongly.

Note this is being tested on real hardware (BeagleBoard xM via JTAG) 
with an interrupt driven console and currently with the sp2038 and a 
recent RSB commit to remove the POSIX thread change the number of 
failures is looking really good. Ben is looking at the critical 
interrupt tests later in the week and that is close to the end. The 
tests are running again so I do not have a complete figure but this is a 
toughest environment for testing RTEMS target wise and I am happy with 
the state.

Chris



More information about the devel mailing list