Re: [Xenomai-core] Xenomai v2.4.9.1

2009-09-01 Thread Gilles Chanteperdrix
Philippe Gerum wrote:
> We had a couple of brown paper bag issues in v2.4.9, particularly in the
> interrupt pipeline for the ARM port, but also a time conversion bug
> which basically affects any architecture with high frequency CPUs
> (x86-ers, this one is for you).

A note for users of Xenomai on the ARM architecture.

A newly added check in Xenomai 2.4.9 allowed us to find a bug in the 
I-pipe patch for ARM, which is actually there since the 
adeos-ipipe-2.6.19-arm-1.7-00 patch. If you are using the 2.4 branch, 
please upgrade to the 2.4.9.1 release.

If you are using an earlier branch, the only thing we can suggest is a 
patch which you should apply to the I-pipe patched kernel:

diff --git a/arch/arm/include/asm/system.h b/arch/arm/include/asm/system.h
index e2b0c3c..e77a017 100644
--- a/arch/arm/include/asm/system.h
+++ b/arch/arm/include/asm/system.h
@@ -217,7 +217,8 @@ extern struct task_struct *__switch_to(struct task_struct *,
 do {   \
local_irq_disable_hw_cond();\
last = __switch_to(prev,task_thread_info(prev), task_thread_info(next));
-   local_irq_enable_hw_cond(); \
+   if (ipipe_root_domain_p) \
+   local_irq_enable_hw_cond(); \
 } while (0)

 #if defined(CONFIG_CPU_SA1100) || defined(CONFIG_CPU_SA110)

Or, for older kernels:

diff --git a/include/asm-arm/system.h b/include/asm-arm/system.h
index e2b0c3c..e77a017 100644
--- a/include/asm-arm/system.h
+++ b/include/asm-arm/system.h
@@ -217,7 +217,8 @@ extern struct task_struct *__switch_to(struct task_struct *,
 do {   \
local_irq_disable_hw_cond();\
last = __switch_to(prev,task_thread_info(prev), task_thread_info(next));
-   local_irq_enable_hw_cond(); \
+   if (ipipe_root_domain_p) \
+   local_irq_enable_hw_cond(); \
 } while (0)

 #if defined(CONFIG_CPU_SA1100) || defined(CONFIG_CPU_SA110)


-- 
  Gilles


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


[Xenomai-core] Xenomai v2.4.9.1

2009-09-01 Thread Philippe Gerum

We had a couple of brown paper bag issues in v2.4.9, particularly in the
interrupt pipeline for the ARM port, but also a time conversion bug
which basically affects any architecture with high frequency CPUs
(x86-ers, this one is for you).

So, here is v2.4.9.1 to fix those bugs:
http://download.gna.org/xenomai/stable/xenomai-2.4.9.1.tar.bz2

Gilles Chanteperdrix (3):
  arm: map all heaps with XNARCH_SHARED_HEAP_FLAGS to avoid cache aliasing 
issues
  timeconv: fix xnarch_ns_to_tsc when using llmulshft
  arm: disable Xscale fpu switching code

Philippe Gerum (7):
  arm: upgrade I-pipe support to 2.6.30-arm-1.14-01
  arm: upgrade I-pipe support to 2.6.30-arm-1.14-02, 2.6.28-arm-1.12-05, 
2.6.29-arm-1.13-03
  build: update version stamp
  native: fix (harmless) uninitialized reference
  doc: regenerate documentation
  powerpc: upgrade legacy I-pipe support to 2.6.20-powerpc-1.9-02

-- 
Philippe.



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