User Extensions, TCB Extension area, and TCBs in general

Wu, Mark H. Mark.H.Wu at disney.com
Mon May 18 14:54:46 UTC 2015


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? 

My thought was to query the current set, and then 

1. Copy the existing set first.
2. Add new extension functions to those that I need and are currently NULL.
3. For any functions that are not NULL that I need to extend, augment the existing ones by calling them first as part of my own extension function(s).

But there seems to be no way to get the current set, so I am stuck.
 

-----Original Message-----
From: Sebastian Huber [mailto:sebastian.huber at embedded-brains.de] 
Sent: Monday, May 18, 2015 00:09
To: Wu, Mark H.; users at rtems.org
Subject: Re: User Extensions, TCB Extension area, and TCBs in general

On 15/05/15 16:46, Wu, Mark H. wrote:
> I understand that you use rtems_extension_create(), but some of that is done "quietly." Specifically, the static extension set is created by configure, and the stack bounds checking is created similarly (if you use the mechanism described in the documentation). How do I get the object identifiers that are created/returned by that configuration/initialization code?

The statically configured extensions have no object identifier and there 
is no field for them in the TCB. If you use the Git master on ARM, 
PowerPC or SPARC, then I would use thread-local storage for your extension.

-- 
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 embedded-brains.de
PGP     : Public key available on request.

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




More information about the users mailing list