[RFC]: Thread safety in __sfp and atexit

Thomas Pfaff tpfaff@gmx.net
Mon Jan 19 21:20:00 GMT 2004


The list operations in __sfp and atexit are not thread safe AFAICS.

This could be avoided by using a mutex or atomic instructions when a 
FILE pointer is acquired or an atexit function is added.

The problem hereby is that such a mutex should be created on newlib 
initialization (_REENT_INIT on the _impure_ptr for example), but there 
might be better locations.

Doing list insert with atomic instructions on the other hand is easy on 
i86 (i486 and above) but might be a problem on other platfomrs.

Comments are welcome.

Thomas



More information about the Newlib mailing list