diff options
author | Jiewen Yao <jiewen.yao@intel.com> | 2016-04-22 15:49:28 +0800 |
---|---|---|
committer | Hao Wu <hao.a.wu@intel.com> | 2016-07-06 16:20:05 +0800 |
commit | ccfcf0713e2e86495f38307a5598473295024baf (patch) | |
tree | ad39cc06b74d92870cc6d1161e5eed84381c69fe /BeagleBoardPkg/BeagleBoardPkg.fdf | |
parent | 2ba021020c708fedf83ce74a97a9cc981165d9eb (diff) | |
download | edk2-platforms-ccfcf0713e2e86495f38307a5598473295024baf.tar.xz |
MdePkg-SmmMemLib: Enhance SmmIsBufferOutsideSmmValid() check for fixed comm buffer.
This patch adds more check in SmmIsBufferOutsideSmmValid(), to make sure that
SMM communication buffer is only EfiReservedMemoryType/EfiRuntimeServicesCode/
EfiRuntimeServicesData/EfiACPIMemoryNVS. So that the communication buffer will
not touch any OS memory.
The assumption is that a platform reports valid SMM communication buffer at
EndOfDxe, because EndOfDxe is last hook point that SMM code can call-out to
get memory map information.
A platform MUST finish SMM communication buffer allocation before EndOfDxe.
If a DXE or OS driver need do communication after EndOfDxe, it can either
allocate SMM communication buffer before EndOfDxe and save it, or consume
EDKII_PI_SMM_COMMUNICATION_REGION_TABLE table to get general fixed comm buffer.
This is designed to meet Microsoft WSMT table definition on FIXED_COMM_BUFFERS
requirement.
Cc: Liming Gao <liming.gao@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Regression-tested-by: Laszlo Ersek <lersek@redhat.com>
(cherry picked from commit 91f51fcc84d9ce3b801fdd895e514cd5525975c7)
Diffstat (limited to 'BeagleBoardPkg/BeagleBoardPkg.fdf')
0 files changed, 0 insertions, 0 deletions