User Extensions, TCB Extension area, and TCBs in general

Sebastian Huber sebastian.huber at
Tue May 19 07:33:56 UTC 2015

On 18/05/15 21:47, Wu, Mark H. wrote:
> -----Original Message-----
> From: Sebastian Huber [mailto:sebastian.huber at]
> Sent: Monday, May 18, 2015 11:49
> To: Wu, Mark H.
> Cc:users at
> Subject: RE: User Extensions, TCB Extension area, and TCBs in general
> Hello Mark,
> which RTEMS version do you use?  The fatal extension changed considerably between 4.10 and the master.
> ----- Wu, Mark H.<Mark.H.Wu at>  schrieb:
>> >I guess I'm a little confused, then. I want to install a global fatal exception handler at configuration time, and I would like to enable the stack bounds checker. But I would also like to add other extensions in addition to those. So what I'm wondering is:
>> >
>> >1. Will enabling the stack bounds check overwrite the fatal exception handler?
>> >2. Will my extension set overwrite the stack bounds check?
>> >3. If the answer to those questions is "yes," then how do I work around it?
> You can have as many initial extensions as you like, they are installed via a read-only table in confdefs.h.  A global fata exception handler is a typical use case for this, see also test sptests/spfatal26.  One limitation is that you have no data field for initial extensions in the TCB.  With the support for thread-local storage, this is not really a problem.
> But how does the stack bounds check interact with the initial extensions? Or are they incorporated into the initial extensions at configuration time? I still need a way to call-back the stack bounds check functions if I need to augment one or more of the extension functions, so I still need a way to "retrieve" its pointer from the current set.

The stack checker is an initial extension. If you need more control, 
then you can also call the stack checker functions in your own 
extension, see. stackchk.h.

Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber at
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

More information about the users mailing list