diff options
author | David Daney <ddaney@caviumnetworks.com> | 2009-11-02 11:33:46 -0800 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2009-11-13 18:10:37 +0100 |
commit | da0bac33413b2888d3623dad3ad19ce76b688f07 (patch) | |
tree | 6d95ce81145b0a11868dd38f5571f58d9d8a79e6 /kernel/sched_idletask.c | |
parent | 156171c71a0dc4bce12b4408bb1591f8fe32dc1a (diff) |
MIPS: Fix emulation of 64-bit FPU on FPU-less 64-bit CPUs.
Running a 64-bit kernel on a 64-bit CPU without an FPU would cause the
emulator to run in 32-bit mode. The c0_Status.FR bit is wired to zero
on systems without an FPU, so using that bit to decide how the emulator
behaves doesn't allow for proper emulation on 64-bit FPU-less
processors.
Instead, we need to select the emulator mode based on the user-space
ABI. Since the thread flag TIF_32BIT_REGS is used to set c0_Status.FR,
we can just use it to decide if the emulator should be in 32-bit or
64-bit mode.
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'kernel/sched_idletask.c')
0 files changed, 0 insertions, 0 deletions