Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6-block.git] / include / asm-mips / fpu.h
index 71436f90203fece8abe35aa6f5962eee567b7a36..b414a7d9db436ceca3e7a5a697ead88f73b425e0 100644 (file)
@@ -100,14 +100,19 @@ static inline void __own_fpu(void)
        set_thread_flag(TIF_USEDFPU);
 }
 
-static inline void own_fpu(int restore)
+static inline void own_fpu_inatomic(int restore)
 {
-       preempt_disable();
        if (cpu_has_fpu && !__is_fpu_owner()) {
                __own_fpu();
                if (restore)
                        _restore_fp(current);
        }
+}
+
+static inline void own_fpu(int restore)
+{
+       preempt_disable();
+       own_fpu_inatomic(restore);
        preempt_enable();
 }