]> Pileus Git - ~andy/linux/commitdiff
x86: Export FPU API for KVM use
authorSheng Yang <sheng@linux.intel.com>
Mon, 17 May 2010 09:22:23 +0000 (17:22 +0800)
committerAvi Kivity <avi@redhat.com>
Sun, 1 Aug 2010 07:35:48 +0000 (10:35 +0300)
Also add some constants.

Signed-off-by: Sheng Yang <sheng@linux.intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/include/asm/i387.h
arch/x86/include/asm/xsave.h
arch/x86/kernel/i387.c
arch/x86/kernel/process.c

index c991b3a7b904bbfea99c5b74e423808eb55b1c56..815c5b2b9f57de3011c4cbfa1aba663a2c0033f1 100644 (file)
@@ -482,6 +482,8 @@ static inline void fpu_copy(struct fpu *dst, struct fpu *src)
        memcpy(dst->state, src->state, xstate_size);
 }
 
+extern void fpu_finit(struct fpu *fpu);
+
 #endif /* __ASSEMBLY__ */
 
 #define PSHUFB_XMM5_XMM0 .byte 0x66, 0x0f, 0x38, 0x00, 0xc5
index 2c4390cae22883014816647319fb6569d6867c2c..29ee4e4c64cf53f210bb3cb948076512f2e6312a 100644 (file)
@@ -13,6 +13,9 @@
 
 #define FXSAVE_SIZE    512
 
+#define XSTATE_YMM_SIZE 256
+#define XSTATE_YMM_OFFSET (512 + 64)
+
 /*
  * These are the features that the OS can handle currently.
  */
index 86cef6b322530ffecaa657ecda41b6cf2619fb47..c4444bce8469876b2a4a43089cad8a97c3198b73 100644 (file)
@@ -107,7 +107,7 @@ void __cpuinit fpu_init(void)
 }
 #endif /* CONFIG_X86_64 */
 
-static void fpu_finit(struct fpu *fpu)
+void fpu_finit(struct fpu *fpu)
 {
 #ifdef CONFIG_X86_32
        if (!HAVE_HWFP) {
@@ -132,6 +132,7 @@ static void fpu_finit(struct fpu *fpu)
                fp->fos = 0xffff0000u;
        }
 }
+EXPORT_SYMBOL_GPL(fpu_finit);
 
 /*
  * The _current_ task is using the FPU for the first time
index e7e35219b32f23e115c23846d06c07b0128e26ae..ebcfcceccc725f61bb8d0b17cfcc67c78dcd0df6 100644 (file)
@@ -28,6 +28,7 @@ unsigned long idle_nomwait;
 EXPORT_SYMBOL(idle_nomwait);
 
 struct kmem_cache *task_xstate_cachep;
+EXPORT_SYMBOL_GPL(task_xstate_cachep);
 
 int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src)
 {