Philippe Gerum wrote:
> On Mon, 2009-10-19 at 21:09 +0200, Jan Kiszka wrote:
>> Gilles Chanteperdrix wrote:
>>> Jan Kiszka wrote:
>>>> @@ -234,12 +239,65 @@ int xnheap_init(xnheap_t *heap,
>>>>    appendq(&heap->extents, &extent->link);
>>>> +  vsnprintf(heap->name, sizeof(heap->name), name, args);
>>>> +
>>>> +  spin_lock(&heapq_lock);
>>>> +  appendq(&heapq, &heap->stat_link);
>>>> +  spin_unlock(&heapq_lock);
>>> You can not use a Linux spinlock in xnheap_init and xnheap_destroy:
>>> - this breaks the build for the simulator;
>>> - callers of xnheap_init and xnheap_destroy are not guaranteed to run on
>>> the root domain.
>> Oh, yes, unfortunately. That callers appear to be fixable, but that's
>> probably not worth it at this point.
> There is nothing to fix here. It's part of the service definition to be
> able to call it from primary mode.

Strictly spoken not. But given that xnheap_init_mapped does not fulfill
this promise and that quite a few users have an either-or use of this
tuple, it doesn't buy us much to allow primary mode.


Attachment: signature.asc
Description: OpenPGP digital signature

Xenomai-core mailing list

Reply via email to