Anders Blomdell wrote:
Jan Kiszka wrote:
additional barrier. Can you check this?
diff --git a/include/nucleus/sched.h b/include/nucleus/sched.h
index df56417..66b52ad 100644
--- a/include/nucleus/sched.h
+++ b/include/nucleus/sched.h
@@ -187,6 +187,7 @@ static inline int xnsched_self_resched_p(struct
xnsched *sched)
if (current_sched != (__sched__)) { \
xnarch_cpu_set(xnsched_cpu(__sched__),
current_sched->resched); \
setbits((__sched__)->status, XNRESCHED); \
+ xnarch_memory_barrier(); \
} \
} while (0)
In progress, if nothing breaks before, I'll report status tomorrow morning.
It still breaks (in approximately the same way). I'm currently putting a
barrier in the other macro doing a RESCHED, also adding some tracing to
see if a read barrier is needed.
Interesting side-note:
Harddisk accesses seems to get real slow after error has occured (kernel
installs progresses with 2-3 modules installed per second), while lots
of idle time reported on all cpu's, weird...
/Anders
_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core