Module: xenomai-forge Branch: next Commit: 27d20a51e77e47c3da295432e115077c06417f2d URL: http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=27d20a51e77e47c3da295432e115077c06417f2d
Author: Philippe Gerum <r...@xenomai.org> Date: Sat Feb 8 10:42:14 2014 +0100 cobalt/sched: instantiate scheduler slot for rt-enabled CPUs only 89c3ce894ef introduced a mechanism for preventing passive migrations to non-rt CPUs, so we should not need to instantiate scheduler slots on those. This fixes the panic situation at boot up reported here: http://www.xenomai.org/pipermail/xenomai/2014-February/030136.html --- kernel/cobalt/assert.c | 2 +- kernel/cobalt/init.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/cobalt/assert.c b/kernel/cobalt/assert.c index 8032c02..b346b8d 100644 --- a/kernel/cobalt/assert.c +++ b/kernel/cobalt/assert.c @@ -62,7 +62,7 @@ void __xnsys_fatal(const char *format, ...) * NOTE: &nkthreadq can't be empty, we have the root thread(s) * linked there at least. */ - for_each_online_cpu(cpu) { + for_each_realtime_cpu(cpu) { sched = xnsched_struct(cpu); list_for_each_entry(thread, &nkthreadq, glink) { if (thread->sched != sched) diff --git a/kernel/cobalt/init.c b/kernel/cobalt/init.c index bda790e..9a9da63 100644 --- a/kernel/cobalt/init.c +++ b/kernel/cobalt/init.c @@ -120,7 +120,7 @@ static void sys_shutdown(void) xnsched_run(); - for_each_online_cpu(cpu) { + for_each_realtime_cpu(cpu) { sched = xnsched_struct(cpu); xnsched_destroy(sched); } @@ -318,7 +318,7 @@ static __init int sys_init(void) } xnheap_set_label(&kheap, "main heap"); - for_each_online_cpu(cpu) { + for_each_realtime_cpu(cpu) { sched = &per_cpu(nksched, cpu); xnsched_init(sched, cpu); } _______________________________________________ Xenomai-git mailing list Xenomai-git@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai-git