[ag-automation] Latest Stable OSADL-Kernel not SMP-safe ?
Claus Gindhart
claus.gindhart at kontron.com
Mon Oct 13 15:50:52 CEST 2008
Hi all,
On a Kontron ThinkIO-Duo (CPU Core2Duo, Chipset i945GM) the program cyclictest
sporidally hang's up, if it's started with the "-c 0" or "-c 1" option. It
does not hang up, if started with "-n".
For example:
# cyclictest -t 5 -p 99 -c 0
After some seconds, or if i apply some CPU load (i press ENTER on the keyboard
multiple times) it will hang up
I spent a lot of time in investigating, which system configurations are
responsible for this effect.
1. gcc toolchain, glibc runtime lib
The problem occurs with different versions of the glibc (glibc 2.5, glibc
2.6.1), if configured for NPTL.
It seems not to occur on with the old TLS:
The most recent OSADL-Live-CD is implemented on the TLS lib. Here, cyclictest
does not hang up, but shows very bad latency values with "-c 0" parameter.
2. Kernel version
I tested with2.6.24.7-rt17, 2.6.24.7-rt21, 2.6.26.6-rt10
All of these kernel show the same hang up
3. SMP / NOSMP
The hang up does NOT occur, if i do the following
# cyclictest -t 1 -p 99 -c 0 >/dev/null &
# cyclictest -t 1 -p 99 -c 0 >/dev/null &
# cyclictest -t 1 -p 99 -c 0 >/dev/null &
# cyclictest -t 1 -p 99 -c 0 >/dev/null &
# cyclictest -t 1 -p 99 -c 0 >/dev/null &
# cyclictest -t 1 -p 99 -c 0 >/dev/null &
The difference to above is, that i do not have multiple threads in one
process; i have multiple processes here.
Also: There is no hang up, if i put a "nosmp" to the kernel command line
Obviously, the problem only occurs, if i am using the NPTL-Libs, have the
PREEMPT_RT patches applied, and i am running a dual core system.
Did anyone encounter a similiar situation ?
Can anyone tell me a system setup (gcc/glibc/Kernel-combination) which
provides NPTL and RT-PREEMPT and works stable on a dual core CPU ?
Best regards,
Claus Gindhart
...
...
More information about the ag-automation
mailing list