linux-mips
[Top] [All Lists]

Re: Problem when the CPU cache is turned on

To: priya <priya@procsys.com>, "linux-mips@linux-mips.org" <linux-mips@linux-mips.org>
Subject: Re: Problem when the CPU cache is turned on
From: Peter Popov <ppopov@embeddedalley.com>
Date: Tue, 28 Dec 2004 23:24:54 -0800 (PST)
In-reply-to: <41D23806.BC19A3C9@procsys.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
> Iam trying to bring up a custom board
> with RM5231A MIPS processor and IT8172
> companion chip. Right now i have an
> issue related to running Linux 2.4.25 on
> MIPS with cache enabled.
 
> When i run the kernel with CPU Cache
> enabled, i get the following error
> messages.
> A. "Unhandled kernel unaligned access or
> invalid instruction in
> unaligned.c::emulate_load_store_insn,
> line 493:"
> B. "Reserved instruction in kernel code
> in traps.c::do_ri, line 663:"
> C. "Unable to handle kernel paging
> request at virtual address 00000000
> 
> These errors happen when i run fsck, vi
> or a simple du command.
 
> When i trun on the "Run uncached"
> option  these errors disapper.
> 
> I do not know where to start debugging.
> Can any one tell me what could be the
> problem when the cache is turned on.

That CPU and coprocessor are/were supported in 2.4 so
in general, the kernel "should" run. If you have
access to an off the shelf reference board with that
CPU and system processor, start there and see if the
kernel runs on that board. If it does not, you may be
looking at a kernel issue. If the kernel runs on the
reference board, then your issue is most likely a
hardware problem with your board. If you don't have
access to a reference board, then you'll be trying to
figure out if this is a hardware or kernel problem.
I'm guessing it's hardware but hopefully not. Hook in
kgdb and try to reproduce the problem with the most
simple test you can find that causes the crash.
Examine the point of failure and try to make sense of
it to figure out if it's kernel or hardware related.
Of course I assume you've already ran at least basic
memory tests on the board and that much passes. If
not, then start there.

Pete

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