Subject: Exceptions

From: Jeff Harrell <[email-masked]>
Date: Wed, 08 Dec 1999 15:46:29 -0700

I have been working through the initialization code for the MIPS/Linux
kernel and have traced through to the point
where the MIPS exceptions are installed.  I have not been able to locate
the following routines

        handle_adel
        handle_ades
        handle_sys
        handle_bp
        handle_n
        handle_cpu
        handle_ov
        handle_tr
        handle_fpe

I see where these are defined by "extern asmlinkage" references but
can't locate the actual implementation of these
exceptions.  Any idea what files these routines might be located in?
Any help would be greatly appreciated

Thank you,
Jeff Harrell

---------8< excerpt from kernel/traps.c -----

 set_except_vector(1, handle_mod);
 set_except_vector(2, handle_tlbl);
 set_except_vector(3, handle_tlbs);
 set_except_vector(4, handle_adel);
 set_except_vector(5, handle_ades);
 /*
  * The Data Bus Error/ Instruction Bus Errors are signaled
  * by external hardware.  Therefore these two expection have
  * board specific handlers.
  */
 set_except_vector(6, handle_ibe);
 set_except_vector(7, handle_dbe);
 ibe_board_handler = default_be_board_handler;
 dbe_board_handler = default_be_board_handler;

 set_except_vector(8, handle_sys);
 set_except_vector(9, handle_bp);
 set_except_vector(10, handle_ri);
 set_except_vector(11, handle_cpu);
 set_except_vector(12, handle_ov);
 set_except_vector(13, handle_tr);
 set_except_vector(15, handle_fpe);

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jeff Harrell                    Work:  (801) 619-6104
Broadband Access group/TI
[email-masked]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

---

From: Carsten Langgaard <[email-masked]>
Date: Thu, 09 Dec 1999 09:05:47 +0100

> Any help would be greatly appreciated

They are located in arch/mips/kernel/entry.S
They are a little hard to find as they use the BUILD_HANDLER macro to
extract the routines.

--
_    _ ____  ___   Carsten Langgaard   mailto:[email-masked]
|\  /|||___)(___   MIPS Denmark        Direct: +45 4486 5527
| \/ |||    ____)  Lautrupvang 2B      Switch: +45 4486 5555
TECHNOLOGIES INC   2750 Ballerup       Fax...: +45 4486 5556
                   Denmark               http://www.mips.com

---

From: Ralf Baechle <[email-masked]>
Date: Thu, 9 Dec 1999 08:44:01 -0200

> They are a little hard to find as they use the BUILD_HANDLER macro to

No wonder why I haven't ever received a patch for these routines since
the MIPS port exists :-)

They should be rewritten anyway; the current code expands the macro
SAVE_ALL quite often, so has a bad cache performance.

  Ralf