linux-mips
[Top] [All Lists]

Re: Memory corruption

To: "William J. Earl" <wje@fir.engr.sgi.com>
Subject: Re: Memory corruption
From: Ulf Carlsson <ulfc@thepuffingroup.com>
Date: Wed, 30 Jun 1999 04:47:02 +0200
Cc: linux@cthulhu.engr.sgi.com
In-reply-to: <199906300101.SAA09334@fir.engr.sgi.com>; from William J. Earl on Tue, Jun 29, 1999 at 06:01:47PM -0700
Mail-followup-to: "William J. Earl" <wje@fir.engr.sgi.com>, linux@cthulhu.engr.sgi.com
References: <19990622033931.A7201@thepuffingroup.com> <199906300101.SAA09334@fir.engr.sgi.com>
Sender: owner-linux@cthulhu.engr.sgi.com
>  > The compiler may stop working sometimes on certain files, giving bogus
>  > error messages which I don't understand (the compiler is probably not the
>  > only application affected).  Running this program I just wrote forces the
>  > corrupted caches to be flushed or something and ``fixes'' the problems:
> ...
> 
>       This problem sounds like a cache flushing problem.  Do you also get
>       SIGILL, SIGBUS, and SIGSEGV failures?  One possibility is that the
>       icache is not being flushed on a page fault, when a page is read in from
>       disk, and the icache still has old data in it.  This could lead to a
>       cache line of bogus instructions being executed.

Sometimes when this happens I think I only get a SIGSEGV or a SIGBUS, otherwise
I get internal compiler errors.  It's hard to say since these problems are very
hard to reproduce, and I forget what happens from time to time.  I have
unfortunately not written down the results.  It sounds like this may be the
cause of the type of file corruption I have when only a little part of the file
is damaged (sounds like the problem covers both icache and dcache).  That type
of file corruption goes away after reboot.  I haven't had a chance to try this
with my discard-disk-cache program since this happens very seldom..

>       What model of CPU do you have in your machine?

I have a 133 MHz R4600 with 512kb board cache, 16kb dcache and 16kb icache.

Regards,
Ulf

<Prev in Thread] Current Thread [Next in Thread>