freebsd-skq/sys/amd64/ia32
Konstantin Belousov 206f09eb46 Do not qualify the mcontext_t *mcp argument for set_mcontext(9) as
const.  On x86, even after the machine context is supposedly read into
the struct ucontext, lazy FPU state save code might only mark the FPU
data as hardware-owned.  Later, set_fpcontext() needs to fetch the
state from hardware, modifying the *mcp.

The set_mcontext(9) is called from sigreturn(2) and setcontext(2)
implementations and old create_thread(2) interface, which throw the
*mcp out after the set_mcontext() call.

Reported by:	dim
Discussed with:	jhb
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2015-01-31 21:43:46 +00:00
..
ia32_exception.S
ia32_misc.c
ia32_reg.c Eliminate ia32_reg.h by moving its contents to x86 and ia64 reg.h. 2012-03-18 19:12:11 +00:00
ia32_signal.c Do not qualify the mcontext_t *mcp argument for set_mcontext(9) as 2015-01-31 21:43:46 +00:00
ia32_sigtramp.S Change the way the lcall $7,$0 is reflected to usermode. Instead of 2014-12-27 23:19:08 +00:00
ia32_syscall.c Change the way the lcall $7,$0 is reflected to usermode. Instead of 2014-12-27 23:19:08 +00:00