On 07/24/2015 05:23 PM, Jan Kiszka wrote:
> On 2015-07-24 17:08, Philippe Gerum wrote:
>> On 07/24/2015 04:56 PM, Jan Kiszka wrote:
>>> On 2015-07-24 16:29, Philippe Gerum wrote:
>>>> On 07/23/2015 03:27 PM, Jan Kiszka wrote:
>>>>> On 2015-07-23 11:45, Philippe Gerum wrote:
>>>>>> On 07/23/2015 11:37 AM, Jan Kiszka wrote:
>>>>>>> On 2015-07-23 11:24, Philippe Gerum wrote:
>>>>>>>>
>>>>>>>> Hi Jan,
>>>>>>>>
>>>>>>>> Do you still have a use case for calling rt_print_auto_init(false) or
>>>>>>>> not calling rt_print_auto_init(true) from libcobalt's bootstrap code?
>>>>>>>>
>>>>>>>
>>>>>>> Huh, that was a day-one feature, now 8 years old, barely remember the
>>>>>>> details. I'm currently not aware of a concrete scenario. It definitely
>>>>>>> makes sense to revisit this think.
>>>>>>>
>>>>>>> I guess one, if not the major problem back then was that the implicit
>>>>>>> malloc of the initialization step was not consistently causing a
>>>>>>> SIGDEBUG warning. That is now different.
>>>>>>>
>>>>>>
>>>>>> Since the current thread won't be notified until XNWARN is armed in its
>>>>>> TCB, any objection to move that call as a nop placeholder to the compat
>>>>>> section in libtrank, leaving the implicit init to libcobalt as currently?
>>>>>
>>>>> Ack.
>>>>>
>>>>
>>>> Ok, let's see how deep you can dive into your context stack these days:
>>>> what about rt_print_cleanup() now? I see no in-tree callers, and I
>>>> wonder whether there is any use case for an application to stop the
>>>> stdio support during runtime.
>>>
>>> I used to have one recently that was specifically interested in
>>> terminating the associated thread. But that case was modified later on
>>> due to other reasons. In principle, the value of this cleanup function
>>> is in the printer thread control, even if that means cutting of wrapped
>>> I/O (you could still print via unwrapped services then).
>>>
>>
>> Ok. Was it part of a broader feature aimed at moving the per-process rt
>> support to a quiescent state?
> 
> No, rather about ensuring that if you terminate only the main thread in
> an application that believes this thread was the last one, the
> application as a whole terminates.
> 

We could probably tell the existing atexit() handler to wipe the helper
thread too.

-- 
Philippe.

_______________________________________________
Xenomai mailing list
[email protected]
http://xenomai.org/mailman/listinfo/xenomai

Reply via email to