Re: VIA C3 and random SIGTRAP or segfault

From: Dave Jones (davej@codemonkey.org.uk)
Date: Wed Jan 15 2003 - 07:23:24 EST


On Wed, Jan 15, 2003 at 10:29:01AM +0100, Miklos Szeredi wrote:
>
> I just bought a VIA C3 866 processor, and under very special
> circumstances some programs (e.g. mplayer, xmms) randomly crash with
> trace/breakpoint trap or segmentation fault. Otherwise the system
> seems stable even under high load.

Be sure that those programs aren't compiled for 686. The C3 lacks
cmov, so it'll segfault when it hits that opcode. You can confirm
this by running it under gdb, and disassembling where it segv's to.
This is still a common problem thats biting some people. The debian
folks had a broken libssl for months up until recently.

Note to userspace developers: If you're compiling something as
a 686 binary, you *NEED* to check the feature flags (in an i386
compiled program) to see if the CPU has cmov before you load 686
optimised parts of your app. This is *NOT* a kernel problem,
it is *NOT* a CPU bug. The cmov extension is optional.
VIA chose to save silicon space by not implementing it.
Gcc unfortunatly always uses cmov when compiling for 686.

                Dave

-- 
| Dave Jones.        http://www.codemonkey.org.uk
| SuSE Labs
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Jan 15 2003 - 22:00:54 EST