Computers Zaurus

Mystery Segfaults Solved

After much painful debugging, I finally found the cause of the segfaults I was seeing on EABI images, particularly with glibc 2.4/2.5. It turned out to be a cache flushing problem affecting StrongARM, XScale and ARMv6 processors. The bug must have been in the kernel for years and only triggered by the changed usage patterns in glibc 2.4/2.5.

I submitted a patch for the problem which has been accepted into the mainline kernel and will be in 2.6.20.
(, I’d recommend anyone using the affected processors to apply this patch.