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
called.
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
again.
I noticed that __xnpod_schedule doesn't get called because of this:
if (testbits(sched->status,
XNKCOUT|XNINIRQ|XNSWLOCK|XNRESCHED) != XNRESCHED)
return;
in: pod.h static inline void xnpod_schedule(void)
I'd appreciate if anyone has an idea about that.
Btw. running version 2.5.5.2
Best regards
_______________________________________________
Xenomai-core mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-core