]> git.proxmox.com Git - mirror_edk2.git/commit
UefiCpuPkg/CpuS3DataDxe: Remove below 4G limitation.
authorEric Dong <eric.dong@intel.com>
Fri, 10 Aug 2018 02:53:45 +0000 (10:53 +0800)
committerEric Dong <eric.dong@intel.com>
Thu, 16 Aug 2018 00:42:01 +0000 (08:42 +0800)
commit6eab8b4368f9bb7130271760b2e93f2172ed97ab
treeff9e623c027274213ef31b203bbbb2fcec7d9fb9
parentb581721063027cb6335cada04d4a898b9dadd1a3
UefiCpuPkg/CpuS3DataDxe: Remove below 4G limitation.

Because PrepareApStartupVector() stores StackAddress to
"mExchangeInfo->StackStart" (which has type (VOID*)), and because
"UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.nasm" reads the latter with:

         add  edi, StackStartAddressLocation
         add  rax, qword [edi]
         mov  rsp, rax
         mov  qword [edi], rax

in long-mode code. So code can remove below 4G limitation.

Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
UefiCpuPkg/CpuS3DataDxe/CpuS3Data.c