On Fri, 2006-11-24 at 14:31 +0100, Anders Blomdell wrote:
> Philippe Gerum wrote:
> > On Fri, 2006-11-24 at 12:46 +0100, Anders Blomdell wrote:
> >> The documentation for rt_task_shadow says:
> >>
> >>    task The address of a task descriptor Xenomai will use to store the
> >>         task-related data. This descriptor must always be valid while
> >>         the task is active therefore it must be allocated in permanent
> >>         memory.
> >>
> >> Is it correct to assume that it is OK to the following:
> >>
> >>    void func() {
> >>      RT_TASK task;
> >>      int err;
> >>
> >>      err = rt_task_shadow(&task, ...);
> >>      ...  Realtime activities ...
> >>      if (err == 0) {
> >>        rt_task_delete(&task);
> >>      }
> >>    }
> > 
> > Yes, even if it relies on the assumption that func() will never unwind
> > its stack space before it self-destroys.
> OK, good. Follow-up question:
> 
>    Is there any way to do the inverse of rt_task_shadow (since
>    the answer above implies that rt_task_delete will destroy the
>    linux task as well)?
> 

No interface currently exists for that, even if technically, this could
be done by simply unmapping the shadow (needs a bit more thought for
corner cases, but still, there should be no showstopper). This would be
safe only against the current Linux task though.

> Regards
> 
> Anders Blomdell
> 
-- 
Philippe.



_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to