Jan Kiszka wrote:
Hi,
today two issue hit us, one with RTAI 3.1 and one with magma. First the
more critical one:
Paolo, do you remember our task deletion problem with the lxrt scheduler
in 3.1? It was this pattern that triggered it, we use it in RTnet for
instance:
task_fun()
{
while (1) {
if (rt_sem_wait(&sem) == SEM_ERR)
return;
/* do some stuff */
}
}
init()
{
rt_typed_sem_init(&sem, 0, CNT_SEM);
rt_task_init(&task, task_fun, ...);
}
cleanup()
{
rt_sem_delete(&sem);
rt_task_delete(&task);
}
It still persists in 3.1's CVS, while it is not existing in the 3.1
release. The point is that we need the CVS due to some other bug in the
release scheduler, but we can't use it with RTnet because of this bug.
Is this issue going to be addressed before 3.1r1?
We have also examined if magma behaves better in both regards.
Fortunately, it does! Ok, switching to magma might be an option.
I'm not happy of the magma solution but to have it better I need time
and still there is something else to do it will be left pending. As for
3.1 (vesuvio) I must say that I find it difficult to maintain, amid the
few things I've to do already. So I'm caring much of 3.2 which is as
stable as 3.1, or even better. See ahead.
At this chance, I wanted to enable magma detection and support in
RTnet's build system. But instead of some version string like
"3.2-testX", "rtai-config --version" just returns "magma"! We all
learned now that magma will always be the name of the current
experimental RTAI branch, right? So, how shall we distinguish in RTnet
between current magma and any potential future magmas?
What about a naming scheme like "3.2-magma" or "magma-post3.1". I don't
know, pick any, but please make it distinguishable!
It should be solved now. Philippe already slapped my face because of
magma misuse, as I should have set a new stable CVS for 3.2 as soon as
magma was working to the point of releasing test versions.
So magma is of no use for anybody now, but people thingking to 3.3. The
official CVS for 3.2 is "vesuvio" now. Philippe has set it up according
to adhere to his published RTAI development scheme. I cannot just
apologise for my careless.
I think your problem should be solved by "vulcano". It is there I'll put
your fixes too.
BTW: "vulcano" is not a generic name but the name of Vulcano island,
which has a vulcano that erupted last in 1888-1890. There is still some
vulcanic activity there that is monitored continuosly by researchers. If
I'm not wrong it should be where god Vulcano had his forge.
Paolo.
Paolo.