This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Consensus: Tuning runtime behaviour with environment variables.


On 05/29/2013 05:59 PM, OndÅej BÃlka wrote:
> On Wed, May 29, 2013 at 03:15:40PM -0400, KOSAKI Motohiro wrote:
>>> - User changeable environment variables that impact library runtime
>>>   behaviour is dangerous.
>>>
>>>   * Could you specifically point out what you find dangerous?
>>>     I see no more danger than we already face when adding a new
>>>     API or reviewing code changes. How is this different
>>>     than all of the other work we do?
>>
>> Reading env variables may reduce multi thread safety level. I know
>> Siddhesh's patch doesn't have such issue. But I hope every developer
>> pay attention threading. i.e. In almost case, reading env var is not
>> generically safe after entering main(). As we already got reported,
>> at least, OpenOffice.org uses both setenv() and multi-threading. Even
>> though it is not unspecified from the standard POV, it's real.
> 
> Other argument for Andi's vectorized getenv where env vars are cached.
> 
> Needs comment that changing runtime behaviour by setting its setenv is
> not supported(Unless we add small performance penalty for each setenv).

No, using setenv will never change the behaviour once the process
is started. At that point your only option would be a new API that
exposes tunables in a thread-safe way with explicitly defined
semantics.

Does that make sense to you Ondrej?

Cheers,
Carlos.
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]