audk/MdePkg/Include
Hao Wu 2ecd829972 MdePkg/BaseLib: Add new AsmLfence API
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1193

This commit will add a new BaseLib API AsmLfence(). This API will perform
a serializing operation on all load-from-memory instructions that were
issued prior to the call of this function. Please note that this API is
only available on IA-32 and x64.

The purpose of adding this API is to mitigate of the [CVE-2017-5753]
Bounds Check Bypass issue when untrusted data are being processed within
SMM. More details can be referred at the 'Bounds check bypass mitigation'
section at the below link:

https://software.intel.com/security-software-guidance/insights/host-firmware-speculative-execution-side-channel-mitigation

Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Regression-tested-by: Laszlo Ersek <lersek@redhat.com>
2018-09-30 13:06:42 +08:00
..
AArch64 MdePkg: Disable some Level 4 warnings for VS2017/ARM64 2018-03-19 17:05:34 +08:00
Arm MdePkg: Disable some Level 4 warnings for VS2017/ARM 2018-02-07 09:49:20 +08:00
Ebc MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
Guid MdePkg Cper.h: Add generic error macros for ARM platform 2018-08-15 09:34:48 -07:00
Ia32 MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
IndustryStandard MdePkg SmBios.h: Add SMBIOS 3.2.0 definitions 2018-08-28 10:13:32 +08:00
Library MdePkg/BaseLib: Add new AsmLfence API 2018-09-30 13:06:42 +08:00
Pi MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
Ppi MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
Protocol MdePkg: Removing ipf which is no longer supported from edk2. 2018-09-25 23:48:21 +08:00
Uefi MdePkg: Removing ipf which is no longer supported from edk2. 2018-09-25 23:48:21 +08:00
X64 MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
Base.h MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
PiDxe.h MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
PiMm.h MdePkg: Add new definitions for Management Mode. 2017-08-29 09:37:36 +08:00
PiPei.h MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
PiSmm.h MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
Uefi.h MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00