[PATCH v3 1/3] Tunables: Add tunables of spin count for pthread adaptive spin mutex

Florian Weimer fweimer@redhat.com
Fri Jun 8 14:54:00 GMT 2018


On 06/08/2018 09:57 AM, kemi wrote:
> 
> 
> On 2018年06月07日 21:09, Florian Weimer wrote:
>> On 05/23/2018 11:22 AM, Kemi Wang wrote:
>>> +#ifdef SHARED
>>> +# define INIT_SECTION ".init_array"
>>> +#else
>>> +# define INIT_SECTION ".preinit_array"
>>> +#endif
>>> +
>>> +void (*const __pthread_mutex_tunables_init_array []) (int, char **, char **)
>>> +  __attribute__ ((section (INIT_SECTION), aligned (sizeof (void *)))) =
>>> +{
>>> +  &mutex_tunables_init
>>> +};
>>
>>
>> Did you try to get rid of this?
>>
> 
> I remembered you suggested me to put this initialization as part of pthread initialization.
> 
> https://sourceware.org/ml/libc-alpha/2018-05/msg00289.html
> 
> But, mutex_tunables_init need three parameters such as argc, argv, and env from libc_start_main,
> while the pthread initialization function __pthread_initialize_minimal does not include any parameter.
> I don't think we can simply put it as part of overall thread initialization unless we change the API
> of __pthread_initialize_minimal.
> 
> Maybe you have better idea.

I will have a lok at it next week.

We need to do this as part of the main initialization of the library, so 
that the tunable is stripped from the environment if necessary.

Thanks,
Florian



More information about the Libc-alpha mailing list