This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] abort: Only flush file-based stdio streams before termination
On 08/17/2017 09:50 AM, Adhemerval Zanella wrote:
>
>
> On 17/08/2017 10:45, Carlos O'Donell wrote:
>> On 08/17/2017 09:35 AM, Florian Weimer wrote:
>>> Historically, glibc flushes streams on abort, which is not
>>> required by POSIX. This can trigger additional work
>>> (including callbacks through function pointers) in processes
>>> which are known to be in a bad state. After this change,
>>> only streams which are backed by the standard descriptor-based
>>> implementation are flushed.
>>
>> Does this mean open_memstream streams to NVM won't be flushed by
>> default?
>>
>> As a user I might be convinced that my own custom streams need to
>> flushed by hand in an abort handler, but I might expect open_memstream
>> streams to be flushed.
>>
>
> For my BZ#21735 fix (libio: Fix open_memstream fflush (NULL)), you
> indicate you asked for clarification regarding open_memstream [1].
> I think we should follow the same semantic for abort after Austin
> Group clarification.
>
> [1] http://austingroupbugs.net/view.php?id=1156
Agreed.
IMO until such clarification is made we should conservatively
flush open_memstream streams.
--
Cheers,
Carlos.