diff options
author | Juergen Gross <jgross@suse.com> | 2015-08-06 19:54:34 +0200 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2015-10-13 03:46:03 +0100 |
commit | e73256664c4ad969637021b1f3a9bea2dc6fdd17 (patch) | |
tree | 1c37fb8466fe0627a2067d550977ed76e4ec1882 /arch/x86/math-emu/get_address.c | |
parent | 75a146b383c8b5175bc313ee73ebe6f9afb248c9 (diff) | |
download | kernel_samsung_smdk4412-e73256664c4ad969637021b1f3a9bea2dc6fdd17.zip kernel_samsung_smdk4412-e73256664c4ad969637021b1f3a9bea2dc6fdd17.tar.gz kernel_samsung_smdk4412-e73256664c4ad969637021b1f3a9bea2dc6fdd17.tar.bz2 |
x86/ldt: Correct FPU emulation access to LDT
commit 4809146b86c3d41ce588fdb767d021e2a80600dd upstream.
Commit 37868fe113ff ("x86/ldt: Make modify_ldt synchronous")
introduced a new struct ldt_struct anchored at mm->context.ldt.
Adapt the x86 fpu emulation code to use that new structure.
Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Andy Lutomirski <luto@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: billm@melbpc.org.au
Link: http://lkml.kernel.org/r/1438883674-1240-1-git-send-email-jgross@suse.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'arch/x86/math-emu/get_address.c')
-rw-r--r-- | arch/x86/math-emu/get_address.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/x86/math-emu/get_address.c b/arch/x86/math-emu/get_address.c index 6ef5e99..d13cab2 100644 --- a/arch/x86/math-emu/get_address.c +++ b/arch/x86/math-emu/get_address.c @@ -20,7 +20,6 @@ #include <linux/stddef.h> #include <asm/uaccess.h> -#include <asm/desc.h> #include "fpu_system.h" #include "exception.h" @@ -158,7 +157,7 @@ static long pm_address(u_char FPU_modrm, u_char segment, addr->selector = PM_REG_(segment); } - descriptor = LDT_DESCRIPTOR(PM_REG_(segment)); + descriptor = FPU_get_ldt_descriptor(segment); base_address = SEG_BASE_ADDR(descriptor); address = base_address + offset; limit = base_address |