_impure_ptr invalid after task_delete() called?

Phil Torre ptorre at zetron.com
Tue May 28 22:37:19 UTC 2002

(This question refers to the now-woefully-out-of-date RTEMS 4.5.0,
with an MPC860 target.)

We had some application code that was using per-task variables,
and registering a destructor function for them.  Among other things,
the destructor was calling newlib functions to close files and
serial ports.  Hunting down a crash bug, I discovered that the
newlib reentrancy pointer (_impure_ptr) is NULL whenever _r newlib
functions are called from the destructor.

Is it unsafe to call reentrant newlib functions from a user extension
invoked by rtems_task_delete(RTEMS_SELF)?

Many thanks,


Phil Torre                               phone: 425-820-6363 x234
Design Engineer                          email: ptorre at zetron.com
Switching Systems Group                    fax: 425-820-7031
Zetron, Inc.                               web: http://www.zetron.com


More information about the users mailing list