kernel - x86-64 - normalize the location of the pcb/md_regs and remove gd_rsp0
authorMatthew Dillon <dillon@apollo.backplane.com>
Sun, 28 Nov 2010 06:34:56 +0000 (22:34 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Sun, 28 Nov 2010 06:34:56 +0000 (22:34 -0800)
commitd1368d1a9cb1e243085a10a268783ee7fa8fd95a
tree2142493b14080dd3ac09a905eb0045535ce0dace
parent763e6ed1f4de4043907d79652371ce3303e9bebc
kernel - x86-64 - normalize the location of the pcb/md_regs and remove gd_rsp0

* Normalize the location of the pcb and related user process register
  frame for traps and system calls.

* The pcb is now 16-byte aligned at the top of the kernel thread's stack
  and md_regs is placed just below it.

* We no longer reserve 16 bytes for a 8086 emulation frame.

* Change the md_regs assignment in the trap code to an assertion that the
  value is correct.

* Remove gd_rsp0, use the value from common_tss.tss_rsp0 instead (which
  is the same).
sys/platform/pc64/include/globaldata.h
sys/platform/pc64/x86_64/exception.S
sys/platform/pc64/x86_64/genassym.c
sys/platform/pc64/x86_64/global.s
sys/platform/pc64/x86_64/machdep.c
sys/platform/pc64/x86_64/pmap.c
sys/platform/pc64/x86_64/swtch.s
sys/platform/pc64/x86_64/trap.c