On Fri, 2007-05-25 at 17:32 +0200, Jan Kiszka wrote:
> Daniel Schnell wrote:
> > Well, that may be related to the bug I am seeing when I am ending 
> > cyclictest with Ctrl-C, Recursive kernel Ooops and this is on plain 2.3.1
> > 
> 
> 2.3.1 is definitely affected by this bug as well, as it also gained the
> prio-coupling rework. But you have to have SCALABLE_SCHED enabled.
> 
> I got it. It is - as usual - a trivial one-liner:
> 

Actually, whatever we passed to the multi-level queue constructor was
lacking normalization wrt the priority scale currently used by the
client skin. I've sanitize this code for the most painful part, but we
need more than this for 2.4. Hey! nice, the bottom of my TODO list has
just reached the basement of my house...

> --- xenomai.orig/ksrc/nucleus/shadow.c
> +++ xenomai/ksrc/nucleus/shadow.c
> @@ -186,7 +186,7 @@ static inline void rpi_init(void)
>  
>  static inline void rpi_init_gk(struct __gatekeeper *gk)
>  {
> -     sched_initpq(&gk->rpislot.threadq, xnqueue_down, XNCORE_NR_PRIO);
> +     sched_initpq(&gk->rpislot.threadq, xnqueue_down, XNCORE_MAX_PRIO);
>  }
>  
>  static inline void rpi_none(xnthread_t *thread)
> 
> 
> Happy weekend, =8)
> 
> Jan
> 
> 
> PS: The maximum priority level has initialised to a wrong value, causing
> threads with prio 0 to be placed out of the queue array.
> 
-- 
Philippe.



_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to