All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-core] __xnpod_schedule not getting called
@ 2012-01-18 12:33 Neri Marschik
  2012-01-19 20:37 ` Gilles Chanteperdrix
  0 siblings, 1 reply; 2+ messages in thread
From: Neri Marschik @ 2012-01-18 12:33 UTC (permalink / raw)
  To: xenomai

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








^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Xenomai-core] __xnpod_schedule not getting called
  2012-01-18 12:33 [Xenomai-core] __xnpod_schedule not getting called Neri Marschik
@ 2012-01-19 20:37 ` Gilles Chanteperdrix
  0 siblings, 0 replies; 2+ messages in thread
From: Gilles Chanteperdrix @ 2012-01-19 20:37 UTC (permalink / raw)
  To: Neri Marschik; +Cc: xenomai

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
> 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

Do you reproduce the same behaviour with xenomai 2.5.6?

-- 
                                                                Gilles.


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-01-19 20:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-18 12:33 [Xenomai-core] __xnpod_schedule not getting called Neri Marschik
2012-01-19 20:37 ` Gilles Chanteperdrix

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.