linux-mips
[Top] [All Lists]

Bug in the _save_fp_context.

To: linux-mips@oss.sgi.com
Subject: Bug in the _save_fp_context.
From: Carsten Langgaard <carstenl@mips.com>
Date: Mon, 19 Mar 2001 15:07:15 +0100
Sender: owner-linux-mips@oss.sgi.com
I think there is a bug in the _save_fp_context function in
arch/mips/kernel/r4k_fpu.S

The problem is the following piece of code:

 jr ra
 .set nomacro
 EX(sw t0,SC_FPC_EIR(a0))
 nop
 .set macro

First of all what should the ".set nomacro" do?
If it means that the EX macro shouldn't be used then this entry wouldn't
get into __ex_table, which would be wrong.
But it look like it uses the macro anyway, regardless of the ".set
nomacro", at least with the compiler I use.
Never the less we do not handle entries in the __ex_table which is
located in a branch delay.
So we need to handle the situation where we take a page fault on an
instruction which is located in a brach delay slot, or we don't put the
"potential" faulting instruction in a delay slot.

Any ideas, how we should handle this in a nice and clean way?

/Carsten

--
_    _ ____  ___   Carsten Langgaard   Mailto:carstenl@mips.com
|\  /|||___)(___   MIPS Denmark        Direct: +45 4486 5527
| \/ |||    ____)  Lautrupvang 4B      Switch: +45 4486 5555
  TECHNOLOGIES     2750 Ballerup       Fax...: +45 4486 5556
                   Denmark             http://www.mips.com




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