[PATCH] Disable single thread optimization for open_memstream

Szabolcs Nagy szabolcs.nagy@arm.com
Wed Jul 12 14:20:00 GMT 2017


On 12/07/17 15:15, Carlos O'Donell wrote:
> On 07/12/2017 10:09 AM, Szabolcs Nagy wrote:
>> Single thread optimization is valid if at thread creation time the
>> optimization can be disabled.  This is in principle true for all
>> stream objects that user code can access (and thus needs locking),
>> using the same internal list as fflush(0) uses.  However in glibc
>> open_memstream is not on that list (BZ 21735) so the optimization
>> has to be disabled.
>>
>> 2017-07-12  Szabolcs Nagy  <szabolcs.nagy@arm.com>
>>
>> 	* libio/memstream.c (__open_memstream): Set _IO_FLAGS2_NEED_LOCK.
>> 	* libio/wmemstream.c (open_wmemstream): Likewise.
>>
> 
> IIUC we can avoid this patch if we fix BZ #21735?
> 

yes, this is an alternative workaround that's less intrusive.



More information about the Libc-alpha mailing list