Thanks Phillppe. You are right, I did call rt_task_set_period()before 
rt_task_wait_period(), but it failed and I was too lazy to check 
rt_task_set_period()'s return value.




________________________________
 From: Philippe Gerum <[email protected]>
To: Tom Z <[email protected]> 
Cc: "[email protected]" <[email protected]> 
Sent: Tuesday, 23 April 2013 11:03 AM
Subject: Re: [Xenomai] rt_task_wait_period returns -11 (-EAGAIN)
 

On 04/23/2013 06:00 PM, Tom Z wrote:
> Hi,
>
> It seems this problem didn't occur before, but yesterday when I ran the same 
> program on the same platform, a statement in my program calling 
> rt_task_wait_period() returns -11. I looked up the error code, and 11 is the 
> value of EAGAIN defined in <LINUX INCLUDE>/asm-generic/error_base.h. So I 
> tried to modify my code like this
>
> unsigned long overrun;
>
> ret = -EAGAIN
> while(-EAGAIN == ret)
>      ret = rt_task_wait_period( &overrun);
>
>
> But it keeps spinning and throws an error in the end: CPU time exceeded.
>
>
>
> What would be the possible cause? My platform is a Core 2 Duo laptop with 
> Xenomai 2.6.2.1 on Linux 3.5.7.
>


Check the doc for EWOULDBLOCK. rt_task_set_periodic() was not
called for the task.

-- 
Philippe.
_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai

Reply via email to