Hi Philippe.

I was wondering if there are any plans to provide an option to Xenomai to 
allow the use of interrupt priorities. I mean, by having the timer source as 
the most prioritary interrupt so that the scheduler could preempt the 

Let me explain why such option would be good. When I was testing my 
framegrabber driver, I had to reboot my PC about 10 times until I could 
identificate what was causing total freeze of the system. The problem was on 
the interrupt handler. One of the problems was that I was not clearing the 
interrupt events correctly so that the handler was in loop. The other problem 
was a crash inside the interrupt due to something like:

uint64_t timestamp=rtdm_clock_read();
b.timestamp = *((struct timeval *) timestamp);

Where it should be
b.timestamp = *((struct timeval *) &timestamp);

I forgot the '&' char.

If it was possible to preempt the interrupt, by a task of greater priority, I 
could write a watchdog that would disable the interrupt in case the system 
stops responding.

Do you think it would worth providing such option to Xenomai, at least as a 
debug feature?

Best Regards,


P.S: BTW, I think my driver is usable now, so that you (or someone else) could 
cite it in some article or documentation. When I finish my master thesis (my 
deadline is the end of June ), I think I'll have time to comment it better 
and to remove the Data Translation specific code so that it can me made 
available as a template for real-time video interfaces. Or maybe you could 
convince Data Translation to allow me to show all the code! ;)

Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora!

Xenomai-core mailing list

Reply via email to