stdout and stderr are getting mixed up?

Sebastian Huber sebastian.huber at
Thu Jun 22 06:08:23 UTC 2017

On 22/06/17 08:01, Chris Johns wrote:

> On 22/06/2017 15:54, Sebastian Huber wrote:
>> The Newlib _vfprintf_r() implementation locks the file stream, so it does ensure
>> this atomicity.
>>> We have thread-local stdio streams in Newlib.
> Could you please elaborate what this means?

Concurrent fprintf(), etc. invocations are serialized in Newlib with 
respect to a specific FILE object. Due to the thread-local stdio streams 
you have many FILE objects. You have a common output device via file 
descriptors 0, 1 and 2.

The use of locks in Newlib is new in RTEMS 4.12 by the way.

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