summaryrefslogtreecommitdiffstats
path: root/include/asm-x86_64/i387.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-x86_64/i387.h')
-rw-r--r--include/asm-x86_64/i387.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/asm-x86_64/i387.h b/include/asm-x86_64/i387.h
index 60c0f4853fdb..0217b74cc9fc 100644
--- a/include/asm-x86_64/i387.h
+++ b/include/asm-x86_64/i387.h
@@ -137,8 +137,8 @@ static inline int save_i387_checking(struct i387_fxsave_struct __user *fx)
#else
: [fx] "cdaSDb" (fx), "0" (0));
#endif
- if (unlikely(err))
- __clear_user(fx, sizeof(struct i387_fxsave_struct));
+ if (unlikely(err) && __clear_user(fx, sizeof(struct i387_fxsave_struct)))
+ err = -EFAULT;
/* No need to clear here because the caller clears USED_MATH */
return err;
}