linux_dsm_epyc7002/arch/um/include/shared
Ingo van Lil fbfe9c847e um: Save FPU registers between task switches
Some time ago Jeff prepared 42daba3165 ("uml: stop saving process FP
state") for UML to stop saving the process FP state between task
switches.  The assumption was that since with SKAS0 every guest process
runs inside a host process context the host OS will take care of keeping
the proper FP state.

Unfortunately this is not true for multi-threaded applications, where
all guest threads share a single host process context yet all may use
the FPU on their own.  Although I haven't verified it I suspect things
to be even worse in SKAS3 mode where all guest processes run inside a
single host process.

The patch reintroduces the saving and restoring of the FP context
between task switches.

[richard@nod.at: Ingo posted this patch in 2009, sadly it was never applied
and got lost. Now in 2011 the problem was reported by Gunnar.]

Signed-off-by: Ingo van Lil <inguin@gmx.de>
Signed-off-by: Richard Weinberger <richard@nod.at>
Reported-by: <gunnarlindroth@hotmail.com>
Tested-by: <gunnarlindroth@hotmail.com>
Cc: Stanislav Meduna <stano@meduna.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-09-14 18:09:37 -07:00
..
skas x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
aio.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
arch.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
as-layout.h x86, um: get rid of excessive includes of uml-config.h 2008-10-22 22:55:22 -07:00
chan_kern.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
chan_user.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
common-offsets.h x86, um: get rid of uml-config.h 2008-10-22 22:55:23 -07:00
elf_user.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
frame_kern.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
init.h fbdev: move logo externs to header file 2009-06-16 19:47:57 -07:00
initrd.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
irq_kern.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
irq_user.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
kern_util.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
kern.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
ldt.h x86, um: untangle uml ldt.h 2008-10-22 22:55:21 -07:00
line.h um: remove file pointer from ioctl 2011-03-22 17:44:09 -07:00
longjmp.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
mconsole_kern.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
mconsole.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
mem_kern.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
mem_user.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
mem.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
net_kern.h uml: convert network device to internal network device stats 2009-03-27 00:46:39 -07:00
net_user.h uml: UML net driver does not allow for vlans 2009-06-16 19:47:46 -07:00
os.h um: add earlyprintk support 2011-05-25 08:39:41 -07:00
process.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
ptrace_user.h trivial: fix typo "to to" in multiple files 2009-09-21 15:14:55 +02:00
registers.h um: Save FPU registers between task switches 2011-09-14 18:09:37 -07:00
sigio.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
skas_ptrace.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
skas_ptregs.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
syscall.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
sysrq.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
task.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
tlb.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
ubd_user.h uml: remove useless comments 2009-04-01 08:59:17 -07:00
um_malloc.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
um_mmu.h x86, um: get rid of excessive includes of uml-config.h 2008-10-22 22:55:22 -07:00
um_uaccess.h x86, um: take arch/um/include/* out of the way 2008-10-22 22:55:19 -07:00
user.h x86, um: get rid of uml-config.h 2008-10-22 22:55:23 -07:00