aboutsummaryrefslogtreecommitdiffstats
path: root/meta-steppeeagle/recipes-kernel/linux/linux-yocto/0052-yocto-amd-clear-exceptions-in-AMD-FXSAVE-workaround.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-steppeeagle/recipes-kernel/linux/linux-yocto/0052-yocto-amd-clear-exceptions-in-AMD-FXSAVE-workaround.patch')
-rw-r--r--meta-steppeeagle/recipes-kernel/linux/linux-yocto/0052-yocto-amd-clear-exceptions-in-AMD-FXSAVE-workaround.patch34
1 files changed, 0 insertions, 34 deletions
diff --git a/meta-steppeeagle/recipes-kernel/linux/linux-yocto/0052-yocto-amd-clear-exceptions-in-AMD-FXSAVE-workaround.patch b/meta-steppeeagle/recipes-kernel/linux/linux-yocto/0052-yocto-amd-clear-exceptions-in-AMD-FXSAVE-workaround.patch
deleted file mode 100644
index ccc0d73a..00000000
--- a/meta-steppeeagle/recipes-kernel/linux/linux-yocto/0052-yocto-amd-clear-exceptions-in-AMD-FXSAVE-workaround.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Backport of commit id 26bef1318adc1b3a530ecc807ef99346db2aa8b0 to kernel 3.12
-
-Before we do an EMMS in the AMD FXSAVE information leak workaround we
-need to clear any pending exceptions, otherwise we trap with a
-floating-point exception inside this code.
-
-Reported-by: halfdog <me@halfdog.net>
-Tested-by: Borislav Petkov <bp@suse.de>
-Link: http://lkml.kernel.org/r/CA%2B55aFxQnY_PCG_n4=0w-VG=YLXL-yr7oMxyy0WU2gCBAf3ydg@mail.gmail.com
-Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-Signed-off-by: Arindam Nath <arindam.nath@amd.com>
-diff -Naur a/arch/x86/include/asm/fpu-internal.h b/arch/x86/include/asm/fpu-internal.h
---- a/arch/x86/include/asm/fpu-internal.h 2013-11-04 05:11:51.000000000 +0530
-+++ b/arch/x86/include/asm/fpu-internal.h 2014-04-09 16:51:26.665126690 +0530
-@@ -293,12 +293,13 @@
- /* AMD K7/K8 CPUs don't save/restore FDP/FIP/FOP unless an exception
- is pending. Clear the x87 state here by setting it to fixed
- values. "m" is a random variable that should be in L1 */
-- alternative_input(
-- ASM_NOP8 ASM_NOP2,
-- "emms\n\t" /* clear stack tags */
-- "fildl %P[addr]", /* set F?P to defined value */
-- X86_FEATURE_FXSAVE_LEAK,
-- [addr] "m" (tsk->thread.fpu.has_fpu));
-+ if (unlikely(static_cpu_has(X86_FEATURE_FXSAVE_LEAK))) {
-+ asm volatile(
-+ "fnclex\n\t"
-+ "emms\n\t"
-+ "fildl %P[addr]" /* set F?P to defined value */
-+ : : [addr] "m" (tsk->thread.fpu.has_fpu));
-+ }
-
- return fpu_restore_checking(&tsk->thread.fpu);
- }