On 01/18/2012 01:33 PM, Neri Marschik wrote:
> Hi there Xenomai community,
> I am implementing a new scheduler for some project and came up with a
> question. Maybe it's a beginners question based on a misunderstanding.
> If I don't have a periodic task my "pick" function is not getting
> I put some prints into the code to see what happens:
> VirtualBox kernel: [ 1052.038250] __xnpod_schedule
> VirtualBox kernel: [ 1052.038252] xnsched_pick_next
> VirtualBox kernel: [ 1052.038253] __xnsched_anytime_exception_pick()
> VirtualBox kernel: [ 1052.038255] __xnsched_anytime_main_pick()
> VirtualBox kernel: [ 1052.038257] __xnsched_idle_pick()
> VirtualBox kernel: [ 1052.038690] __xnpod_schedule
> This is normal behavior which repeats forever as long as there is some
> periodic task running.
> If I stop this periodic task my non-periodic tasks which should be run
> only once are never run because the pick() function is not called
> I noticed that __xnpod_schedule doesn't get called because of this:
> if (testbits(sched->status,
> XNKCOUT|XNINIRQ|XNSWLOCK|XNRESCHED) != XNRESCHED)
> in: pod.h static inline void xnpod_schedule(void)
> I'd appreciate if anyone has an idea about that.
> Btw. running version 18.104.22.168
Do you reproduce the same behaviour with xenomai 2.5.6?
Xenomai-core mailing list