diff -Nru link/arch/mips/kernel/ptrace.c.orig link/arch/mips/kernel/ptrace.c --- link/arch/mips/kernel/ptrace.c.orig Fri Aug 9 09:38:10 2002 +++ link/arch/mips/kernel/ptrace.c Mon Sep 16 14:22:27 2002 @@ -168,10 +168,10 @@ break; } - __save_flags(flags); + flags = read_32bit_cp0_register(CP0_STATUS); __enable_fpu(); __asm__ __volatile__("cfc1\t%0,$0": "=r" (tmp)); - __restore_flags(flags); + write_32bit_cp0_register(CP0_STATUS, flags); break; } default: diff -Nru link/arch/mips64/kernel/ptrace.c.orig link/arch/mips64/kernel/ptrace.c --- link/arch/mips64/kernel/ptrace.c.orig Fri Aug 9 09:38:19 2002 +++ link/arch/mips64/kernel/ptrace.c Mon Sep 16 14:24:02 2002 @@ -165,10 +165,10 @@ break; case FPC_EIR: { /* implementation / version register */ unsigned int flags; - __save_flags(flags); + flags = read_32bit_cp0_register(CP0_STATUS); __enable_fpu(); __asm__ __volatile__("cfc1\t%0,$0": "=r" (tmp)); - __restore_flags(flags); + write_32bit_cp0_register(CP0_STATUS, flags); break; } default: