linux-mips-fnet
[Top] [All Lists]

Re: interrupts

To: ralf@uni-koblenz.de
Subject: Re: interrupts
From: Thomas Riemer <triemer@apt4g.a3nyc.com>
Date: Sat, 26 Dec 1998 02:01:17 -0500 (EST)
Cc: linux-mips@fnet.fr
In-reply-to: <19981225203704.F4641@uni-koblenz.de>
Apparently it breaks at epc: 8004f708 looking this up in System.map
I find its in the function do_ade in arch/mips/kernel/unaligned.c

What does is the function do_ade supposed to do?

-Tom

-----------------------------------------------------------------------
Given enough eyeballs all bugs seem shallow.

On Fri, 25 Dec 1998 ralf@uni-koblenz.de wrote:

> On Tue, Dec 22, 1998 at 11:46:06PM -0500, Thomas Riemer wrote:
> 
> > I get a message from mm/fault.c - indicating that I'm
> > getting a "page fault from irq handler 0001 "  which I traced back
> > to in_interrupt() going high - looks like because I'm both in
> > a hardware interrupt and in bh handler.  
> 
> in_interrupt() indicates that you are in an interrupt OR in a bottom half
> handler, not in both.
> 
> > So now I know that I'm not doing something right - but having
> > staired at the code for several hours now I'm drawing an absolute
> > blank.  
> > 
> > It looks like I'm getting a hardware interrupt for 0001 (DISK I think)
> > and that there is bh handler running.  Its not clear whether this is 
> > the disk bh handler or the serial dz handler that's set up.  Either
> > way its worrisome.  
> > 
> > Is there anyway for me to determine which bh handler I'm in?
> 
> No, that information is not visible outsid of run_bottom_halfes() in
> kernel/softirq.c.  It's a trivial function so you could easily add some
> debugging code.
> 
> In any case the epc of a register dump in do_fault when in_interrupt is
> true should point you to the offending instruction, the necessary change
> to print such a register dump would be trivial.
> 
>   Ralf
> 

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