Jeff Webb wrote:
If I run the attached program, I get the following result:

 [root]# ./mqtest2
 CPU time limit exceeded

The kernel log contains:

Oct 25 14:13:03 kernel: invalid use of FPU in Xenomai context at 0x80492f6

I have another piece of information on this problem.  I was able to test the program on two other machines: 
an Athlon XP, and a PIII laptop.  The program works on the PIII, but fails on the Athlon XP.  I then compiled 
a new kernel, selecting the "Pentium-Pro" processor family instead of the 
"Athlon/Duron/K7" processor family.  The mqtest2 program now works on my Athlon64 X2 and Athlon XP 
systems, if I use the "Pentium-Pro" kernel.

Here is a summary of what I tried:

Machine #1: AMD Athlon(tm)64 X2 Dual Core Processor  4400+
       OS: Fedora Core 5
a) Linux SMP 2.6.17.13 (K7 config) / Xenomai 2.2.4 -> mqtest2 fails
b) Linux SMP 2.6.17.13 (K7 config) / Xenomai trunk r1749 + patch -> mqtest2 
fails
  patch = https://mail.gna.org/public/xenomai-core/2006-10/msg00069.html
c) Linux UP 2.6.17.13 (K7 config) / Xenomai 2.2.4 -> mqtest2 fails
d) Linux SMP 2.6.17.13 (K7 config) / Xenomai 2.2.1 -> mqtest2 fails
e) Linux UP 2.6.17.13 (ppro config) / Xenomai 2.2.4 -> mqtest2 WORKS!

Machine #2: AMD Athlon(tm) XP 3200+
a) Fedora Core 1 / Linux 2.4.32 (K7 config) / Xenomai 2.2.3 -> mqtest2 fails
b) Fedora Core 5 / Linux 2.6.17.13 (ppro config) / Xenomai 2.2.4 -> mqtest2 
WORKS!

Machine #3: Intel Pentium III Mobile CPU
OS: Debian Unstable (old)
Linux 2.4.33.3 (ppro config) / Xenomai 2.2.4 -> mqtest2 WORKS!

So, it seems that a bug is introduced when compiling for the AMD K7 family.  Is 
the mqtest2 problem a compiler optimization bug, a Linux bug, a Linux 
configuration problem, a Xenomai bug, or a problem in my code?  Any ideas on 
how to proceed?  I am not familiar with the Xenomai internals or low-level x86 
code, but I will do what I can to help debug this.

Does anyone else have an AMD system that can verify my results?

The mqtest2.c program in question was attached here:
 https://mail.gna.org/public/xenomai-help/2006-10/msg00147.html

The problem seems to be connected with the size of writes to Xenomai pipes.  
This example uses POSIX message queues, but I had a similar problem a while 
back with RTAI pipes.  Maybe this tells us the problem is in the nucleus pipe 
code?  Just a guess.  The problem seems to affect both 2.4 and 2.6 systems, and 
goes back to at least Xenomai 2.2.1.

Thanks,

Jeff


_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to