[linux-cirrus] Re: Yet another MaverickCrunch hardware bug?

  • From: Ryan Mallon <ryan@xxxxxxxxxxxxxxxx>
  • To: linux-cirrus@xxxxxxxxxxxxx
  • Date: Mon, 16 Feb 2009 09:06:27 +1300

Martin Guy wrote:
> Hi!
>   You probably know I have some patches to gcc that fix Maverick code
> generation and even add a flag -mieee to disable all the
> non-strictly-conformant instructions.
>   I'm now going mad trying to nail the last rare Maverick bug and am
> seeing such crazy results that I must consider there being something
> dodgy about my particular hardware or kernel.
> 
>   Briefly, would someone with a Cirrus EP93XX chip running an EABI OS
> run the attached program and tell me whether for them too it gives
> different results at each run, then let me know together with their
> silicon revision number (5th and 6th chars of the second line of text
> on the chip housing).
> 
> Here's what I am seeing:
> 
> Every test program I try works perfectly except for paranoia, which
> gives different results each time I run it, from failure to segfault
> to illegal instruction to infinite loops.

Hi Martin,

I'm running the precompiled binary (I don't have your toolchain
installed). My kernel is a modified 2.6.20 with EABI support.

Linux version 2.6.20-snapper (andre@tutira) (gcc version 4.3.2 (Sourcery
G++ Lite 2008q3-72) ) #297 Mon Feb 2 15:17:07 NZDT 2009
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177

My chip id is: EP9315-IBZ, EFWAE2AP0620

When I run the binary, I consistently get a crash on an illegal
instruction. Running in gdb I get:

(gdb) r
Starting program: /paranoia

Program received signal SIGILL, Illegal instruction.
0x0000950c in main ()

Over several runs, the crash is always in the same place.

> 
> It's worse than that. If I have a freshly-compiled binary and go:
> 
> $ cp paranoia2 foo
> $ ./paranoia2
> $ cmp -l foo paranoia2

Didn't happen for me. I made a copy of the binary before running it, and
the copy is exactly the same after several runs. The binary is stored on
an NFS partition if that matters.

I'm probably going to be doing some ep93xx work over the next week, so
should have one of our boards running on the latest kernel, I can test
again with that to see if it makes any difference.

~Ryan

-- 
Bluewater Systems Ltd - ARM Technology Solution Centre

       Ryan Mallon                              Unit 5, Amuri Park
       Phone: +64 3 3779127                     404 Barbadoes St
       Fax:   +64 3 3779135                     PO Box 13 889
       Email: ryan@xxxxxxxxxxxxxxxx             Christchurch, 8013
       Web:   http://www.bluewatersys.com       New Zealand
       Freecall Australia  1800 148 751         USA 1800 261 2934

Other related posts: