Gilles Chanteperdrix wrote:
> Jan Kiszka wrote:
>> Gilles Chanteperdrix wrote:
>>> Jan Kiszka wrote:
>>>> Hi Gilles,
>>>>
>>>> this one requires some fixing too:
>>>>
>>>> xeno_sem_heap is marked weak. xeno_init_sem_heaps is called once per
>>>> initialized skin. It unmaps any existing heap and creates a new one.
>>>> That's already fragile during constructor run, but it's lethal during
>>>> process runtime, ie. when using dlopen.
>>>>
>>>> I think the solution is to handle forks separately and only remap in
>>>> that case. Digging in this direction now.
>>>>
>>>> BTW, what triggers the re-run of xeno_init_sem_heaps after a fork so far?
>>> It must be done for the child process to get a private heap different
>>> from the parent process. I would guess it is handled by pthread_atfork.
>> Ah, only the POSIX skin does that. However, sem-heaps must not be
>> POSIX-only. OK, patch in the make.
> 
> Ok. I am thinking more and more that you are right about making
> libxeno_common a standalone library. Only the name stinks, we should
> find a better one.

libxnskin or so?

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to