[PATCH] bsp: Remove fatal from exit(0). Add extended heap error output

Chris Johns chrisj at rtems.org
Wed Jul 21 07:04:05 UTC 2021


On 21/7/21 3:37 pm, Sebastian Huber wrote:
> Hello Chris,
> 
> thanks, this is a nice improvement.

It helps find the corruption with a watch point.

> On 21/07/2021 07:17, chrisj at rtems.org wrote:
>> --- a/bsps/shared/start/bspfatal-default.c
>> +++ b/bsps/shared/start/bspfatal-default.c
>> @@ -22,15 +22,24 @@ void bsp_fatal_extension(
>>   {
>>     #if BSP_VERBOSE_FATAL_EXTENSION
>>       Thread_Control *executing;
>> +    const char* TYPE = "*** FATAL ***\n";
>> +    const char* type = "fatal";
>> +
>> +    if ( source == RTEMS_FATAL_SOURCE_EXIT ) {
>> +      TYPE = "";
> 
> It would be good to still have a unique pattern which starts the fatal extension
> message.  The "***" is also used for the test begin/end marker. What about "***
> SYSTEM TERMINATED ***"?

I considered this but I was concerned about the difference not being clear.
Maybe I overstepped. The patch gives us:

exit source: 5 (RTEMS_FATAL_SOURCE_EXIT)
exit code: 0 (0x00000000)
RTEMS version: 6.0.0.87609bacd323eef1f3f4d6620ce42e7e5309ad10
RTEMS tools: 10.3.1 20210409 (RTEMS 6, RSB
4e6dc6431435821a534da6307e72ecbd7e42b82a, Newlib 0c0f3df)
executing thread ID: 0x08a010001
executing thread name: UI1

and with the banner text:

*** EXIT ***
exit source: 5 (RTEMS_FATAL_SOURCE_EXIT)
exit code: 0 (0x00000000)
RTEMS version: 6.0.0.87609bacd323eef1f3f4d6620ce42e7e5309ad10
RTEMS tools: 10.3.1 20210409 (RTEMS 6, RSB
4e6dc6431435821a534da6307e72ecbd7e42b82a, Newlib 0c0f3df)
executing thread ID: 0x08a010001
executing thread name: UI1

It is easy to bend any direction here so maybe we wait for Joel to comment
before I make a v2 patch.

Chris


More information about the devel mailing list