diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-18 11:58:16 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-18 11:58:16 -0400 |
commit | 41d59102e146a4423a490b8eca68a5860af4fe1c (patch) | |
tree | 739ed4113ccdaeb33d1723a6beab09c1e18d7048 /arch/x86/include/asm/processor.h | |
parent | 3e1dd193edefd2a806a0ba6cf0879cf1a95217da (diff) | |
parent | c9775b4cc522e5f1b40b1366a993f0f05f600f39 (diff) |
Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
x86, fpu: Use static_cpu_has() to implement use_xsave()
x86: Add new static_cpu_has() function using alternatives
x86, fpu: Use the proper asm constraint in use_xsave()
x86, fpu: Unbreak FPU emulation
x86: Introduce 'struct fpu' and related API
x86: Eliminate TS_XSAVE
x86-32: Don't set ignore_fpu_irq in simd exception
x86: Merge kernel_math_error() into math_error()
x86: Merge simd_math_error() into math_error()
x86-32: Rework cache flush denied handler
Fix trivial conflict in arch/x86/kernel/process.c
Diffstat (limited to 'arch/x86/include/asm/processor.h')
-rw-r--r-- | arch/x86/include/asm/processor.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h index c71a12d960d4..5a51379dcbe4 100644 --- a/arch/x86/include/asm/processor.h +++ b/arch/x86/include/asm/processor.h | |||
@@ -376,6 +376,10 @@ union thread_xstate { | |||
376 | struct xsave_struct xsave; | 376 | struct xsave_struct xsave; |
377 | }; | 377 | }; |
378 | 378 | ||
379 | struct fpu { | ||
380 | union thread_xstate *state; | ||
381 | }; | ||
382 | |||
379 | #ifdef CONFIG_X86_64 | 383 | #ifdef CONFIG_X86_64 |
380 | DECLARE_PER_CPU(struct orig_ist, orig_ist); | 384 | DECLARE_PER_CPU(struct orig_ist, orig_ist); |
381 | 385 | ||
@@ -453,7 +457,7 @@ struct thread_struct { | |||
453 | unsigned long trap_no; | 457 | unsigned long trap_no; |
454 | unsigned long error_code; | 458 | unsigned long error_code; |
455 | /* floating point and extended processor state */ | 459 | /* floating point and extended processor state */ |
456 | union thread_xstate *xstate; | 460 | struct fpu fpu; |
457 | #ifdef CONFIG_X86_32 | 461 | #ifdef CONFIG_X86_32 |
458 | /* Virtual 86 mode info */ | 462 | /* Virtual 86 mode info */ |
459 | struct vm86_struct __user *vm86_info; | 463 | struct vm86_struct __user *vm86_info; |