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.

>  I will have to rewrite
> heap_read_proc to break out of nklock frequently. Also not nice, but
> less invasive.
> 
> Jan
> 
> _______________________________________________
> Xenomai-core mailing list
> Xenomai-core@gna.org
> https://mail.gna.org/listinfo/xenomai-core
-- 
Philippe.



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

Reply via email to