[3.8.y.z extended stable] Patch "x86, AVX-512: Enable AVX-512 States Context Switch" has been added to staging queue

Kamal Mostafa kamal at canonical.com
Wed Apr 23 17:23:10 UTC 2014


This is a note to let you know that I have just added a patch titled

    x86, AVX-512: Enable AVX-512 States Context Switch

to the linux-3.8.y-queue branch of the 3.8.y.z extended stable tree 
which can be found at:

 http://kernel.ubuntu.com/git?p=ubuntu/linux.git;a=shortlog;h=refs/heads/linux-3.8.y-queue

This patch is scheduled to be released in version 3.8.13.22.

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.8.y.z tree, see
https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable

Thanks.
-Kamal

------

>From 3704546e7c4e49e94ee8839fc2c6372904aa70cf Mon Sep 17 00:00:00 2001
From: Fenghua Yu <fenghua.yu at intel.com>
Date: Thu, 20 Feb 2014 13:24:51 -0800
Subject: x86, AVX-512: Enable AVX-512 States Context Switch

commit c2bc11f10a39527cd1bb252097b5525664560956 upstream.

This patch enables Opmask, ZMM_Hi256, and Hi16_ZMM AVX-512 states for
xstate context switch.

Signed-off-by: Fenghua Yu <fenghua.yu at intel.com>
Link: http://lkml.kernel.org/r/1392931491-33237-2-git-send-email-fenghua.yu@intel.com
Signed-off-by: H. Peter Anvin <hpa at linux.intel.com>
[ Fenghua Yu: backport to 3.8-stable (apply new bits directly to XCNTXT_MASK) ]
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
---
 arch/x86/include/asm/xsave.h | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/arch/x86/include/asm/xsave.h b/arch/x86/include/asm/xsave.h
index 0415cda..0b651f9 100644
--- a/arch/x86/include/asm/xsave.h
+++ b/arch/x86/include/asm/xsave.h
@@ -6,9 +6,14 @@

 #define XSTATE_CPUID		0x0000000d

-#define XSTATE_FP	0x1
-#define XSTATE_SSE	0x2
-#define XSTATE_YMM	0x4
+#define XSTATE_FP		0x1
+#define XSTATE_SSE		0x2
+#define XSTATE_YMM		0x4
+#define XSTATE_BNDREGS		0x8
+#define XSTATE_BNDCSR		0x10
+#define XSTATE_OPMASK		0x20
+#define XSTATE_ZMM_Hi256	0x40
+#define XSTATE_Hi16_ZMM		0x80

 #define XSTATE_FPSSE	(XSTATE_FP | XSTATE_SSE)

@@ -23,7 +28,7 @@
 /*
  * These are the features that the OS can handle currently.
  */
-#define XCNTXT_MASK	(XSTATE_FP | XSTATE_SSE | XSTATE_YMM)
+#define XCNTXT_MASK	(XSTATE_FP | XSTATE_SSE | XSTATE_YMM | XSTATE_OPMASK | XSTATE_ZMM_Hi256 | XSTATE_Hi16_ZMM)

 #ifdef CONFIG_X86_64
 #define REX_PREFIX	"0x48, "
--
1.9.1





More information about the kernel-team mailing list