2009/11/4 Gilles Chanteperdrix <[email protected]>

> Didenko Sergey wrote:
> > Dear Experts
>
> Hi, you do not need to flatter us to get answers :-)
>

Then, who are you if not the experts in Xenomai?
Do not be so modest ;-)


> >
> > we are facing 2 problems now:
> >
> > 1) in our test application (very simple one) we can create maximum 50
> > tasks, next task is failed to create with error *12*
> > *- Is there any task number limit?*
> > *- what does 12 mean?*
>
> Please read the TROUBLESHOOTING guide which comes with Xenomai, for the
> question about the task number limit.
>

So, to solve that problem we did try, as guide says: "A work-around consists
of setting a
lower user-limit for initial stack allocation, like calling "ulimit
-s <initial-size-in-kbytes>" in your parent shell before running
your application", but it did not help at all.

We were able to increase the number of created tasks by increasing the value
of CONFIG_XENO_OPT_SYS_HEAPSZ and CONFIG_XENO_OPT_REGESTRY_NRSLOTS in
configuration for kernel.
For instance, in our test application, finally, we were able to create up to
500 tasks (stack is 10 KB) when options were like
CONFIG_XENO_OPT_SYS_HEAPSZ = 4096
CONFIG_XENO_OPT_REGESTRY_NRSLOTS = 1024


> For the error codes, see:
> http://www.xenomai.org/index.php/Resolving_Error_Codes
>
> >
> > 2) in our project (originally developed for VxWorks), msgQReceive
> > function returns -1 and sets errno to 4
> > *We think that it might be related to XNBREAK thread's flag.*
>
> Yes, error 4 is EINTR, it means that msgQReceive was interrupted by a
> signal. We can only tell you whether this is normal if you tell us in
> exactly what conditions you get this error (a test case reduced to the
> minimum would be welcome).
>
> It was our application's problem, now it is solved.

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

Reply via email to