rt_task_init_schmod() failure reason?
Aref Taidi
aref.taidi at newera-computing.com
Thu Nov 29 16:33:28 CET 2007
When I run the system the first time I don't have this problem. But when I
kill -9 the system and re-run, consistently same thread fails - does this
suggest a memory leak problem within RTAI or my code?
Is "size of global heap" the only memory configuration within RTAI?
Does reconfiguration mean I need to go through the whole process of RTAI
reinstallation etc.?
When I look at the process currently running when I switch on the PC I see
two copies of rtai_up.ko and three copies of rtai_betrpc.ko as follows - is
this normal? I only added one insmod for each to /etc/rc.d/rc.local though?
[root at localhost core]# ps -ef | grep rtai
root 2318 1 0 16:06 ? 00:00:00 insmod
/usr/realtime/modules/rtai_up.ko
root 2319 2318 0 16:06 ? 00:00:00 insmod
/usr/realtime/modules/rtai_up.ko
root 2330 1 0 16:06 ? 00:00:00 insmod
/usr/realtime/modules/rtai_netrpc.ko ThisNode=127.0.0.1
root 2331 1 0 16:06 ? 00:00:00 insmod
/usr/realtime/modules/rtai_netrpc.ko ThisNode=127.0.0.1
root 2332 1 0 16:06 ? 00:00:00 insmod
/usr/realtime/modules/rtai_netrpc.ko ThisNode=127.0.0.1
root 2687 2639 0 16:16 pts/4 00:00:00 grep rtai
Many thanks,
Aref
-----Original Message-----
From: Paolo Mantegazza [mailto:mantegazza at aero.polimi.it]
Sent: 29 November 2007 10:39
To: Aref Taidi
Cc: 'Paolo Mantegazza'; rtai at rtai.org
Subject: Re: rt_task_init_schmod() failure reason?
Aref Taidi wrote:
> Hello Paolo,
>
> I am using RTAI 3.3 FC5 with vanilla kernel 2.6.15.6. I am initially
> registering 14 threads, but need to add 13 more, and some more later -
they
> are all in user space. Some of these communicate with and FLTK Linux
process
> partially through share memory created through rt_shm_alloc(). I have used
> the default number, didn't know it is configurable. For creation of each
> task I am making the following call sequence for every one of them:
>
> pthread_t taskN;
> unsigned long taskN_id;
> RT_TASK *rtai_taskN;
>
> pthread_create( &taskN, NULL, (void *) taskN_entryPoint, NULL)
> taskN_id = nam2num( "TASK01" );
> pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL);
> rtai_taskN = rt_task_init_schmod(taskN_id, taskNprio, 2048, 1024,
> SCHED_FIFO, 0xff);
> mlockall(MCL_CURRENT | MCL_FUTURE);
> rt_grow_and_lock_stack(60000);
> rt_make_hard_real_time();
> rt_task_use_fpu(rtai_ taskN, 1);
> myTaskMBX = rt_typed_mbx_init(nam2num("MBXNAM"), 2000, FIFO_Q);
>
> Many thanks,
>
Rt_task_init can return NULL if:
- there is no more memory to allocate in real time within, the RTAI
available heap, what a task needs; for that you should increase the
related heap size at RTAI configuration
- there is a conflicting name identifier; you should find it
- there is no more space in the table of the registered objects in user
space, not only tasks but anything RTAI create/opens (sems, maiboxes,
etc. etc.); for that you should increase the related size at RTAI
configuration.
Paolo
> Aref
>
> -----Original Message-----
> From: Paolo Mantegazza [mailto:mante at aero.polimi.it]
> Sent: 29 November 2007 00:28
> To: Aref Taidi
> Cc: rtai at rtai.org
> Subject: Re: rt_task_init_schmod() failure reason?
>
> Aref Taidi writes:
>
>
>>Hello everyone,
>>
>>I am having difficulty finding out why a call to rt_task_init_schmod()
>
> fails
>
>>and returns NULL.
>>
>>I have many user space hard real-time threads, but one of them fails to
>>initialise when I make a call to rt_task_init_schmod(). The threads are of
>>various priority order, call to the above function to initialise each are
>>made not necessarily in their priority order, but always in the same
>>sequence. All have unique 6 letter name, there is plenty of memory. But
>>always same thread initialisation failed. I changed the name of that
>
> thread,
>
>>it caused another one to fail!
>>
>>Is there a technique to find out exactly why rt_task_init_schmod() has
>>returned NULL?
>>
>>Many thanks in advance,
>>
>
>
> What RTAI version? How many RTAI objects are you registering? Have you
> configured the related number or used the default?
>
> Paolo.
>
>>Aref
>>
>>
>>_______________________________________________
>>RTAI mailing list
>>RTAI at rtai.org
>>https://mail.rtai.org/cgi-bin/mailman/listinfo/rtai
>
>
>
>
> --
> This email has been verified as Virus free
> Virus Protection and more available at http://www.plus.net
>
>
--
This email has been verified as Virus free
Virus Protection and more available at http://www.plus.net
More information about the Rtai
mailing list