opnsense-src/sys/amd64
Peter Wemm 2c25d12414 Clean up get/set_mcontext() and get/set_fpcontext(). These are operated
on data structures on the kernel stack which are guaranteed to be 16 byte
aligned by gcc, the amd64 ABI and __aligned(16).

Ensire the tss_rsp0 initial stack pointer is 16 byte aligned in case
sizeof(pcb) becomes odd at some point.  This is convenient for the
interrupt handler case because the ring crossing pushes cause the
required odd alignment before the call to the C code.

Have fast_syscall add an additional 8 bytes to ensure that the trapframe
has the correct odd alignment for the call to C code.  Note that there are
no checks to make sure that the trapframe size is appropriate for this.

This makes get/setfpcontext work properly (finally).  You get a GPF in
kernel mode if any of this is botched without the alignment fixup code
that is apparently needed on i386.
2003-09-09 19:32:09 +00:00
..
acpica Minor style cleanups. 2003-08-28 16:30:31 +00:00
amd64 Clean up get/set_mcontext() and get/set_fpcontext(). These are operated 2003-09-09 19:32:09 +00:00
compile Make space for compilations. 2002-07-06 02:49:07 +00:00
conf Turn aac back on now that its been cleaned up for 64 bit compilation 2003-09-08 20:00:55 +00:00
ia32 Switch to using the emulator in the common compat area. 2003-08-23 00:04:53 +00:00
include Argh. This file was completely out of sync with mcontext/trapframe. 2003-09-08 18:31:48 +00:00
isa Use __FBSDID(). 2003-07-25 21:19:19 +00:00
pci - Rename PCIx_HEADERTYPE* to PCIx_HDRTYPE* so the constants aren't so long. 2003-08-28 21:22:25 +00:00
Makefile This commit adds basic support for the UFS2 filesystem. The UFS2 2002-06-21 06:18:05 +00:00