Branch: refs/heads/master Home: https://github.com/tianocore/edk2 Commit: f0390f7bf14c1f5fe1205dc12185896150c70756 https://github.com/tianocore/edk2/commit/f0390f7bf14c1f5fe1205dc12185896150c70756 Author: Oliver Smith-Denny <o...@microsoft.com> Date: 2024-11-13 (Wed, 13 Nov 2024)
Changed paths: M UefiCpuPkg/ResetVector/FixupVtf/Vtf.inf M UefiCpuPkg/ResetVector/Vtf0/Vtf0.inf Log Message: ----------- UefiCpuPkg: Make the ResetVector USER_DEFINED The x86 reset vector is the initial FW code to run on an AP. It should not link to any libraries and is implemented entirely in assembly. This module is currently labled as SEC, because it runs during the SEC phase, but by having it SEC, it will be linked to all NULL libraries linked globally. This causes issue with StackCheckLib (though any NULL library being applied globally has the same issue) because BaseTools will attempt to link the library and add an extern to _ModuleEntryPoint, which does not exist for this module. Moving this module to USER_DEFINED instructs BaseTools to not link any NULL libraries to it, which is the desired behavior, and leads to a much cleaner global NULL library implementation, in this case for StackCheckLib. This change was tested on OVMF IA32/X64 and proved to work as before. Signed-off-by: Oliver Smith-Denny <o...@linux.microsoft.com> Commit: fd9e9848ac8ebd349e1fe2c15a46c56566a106c7 https://github.com/tianocore/edk2/commit/fd9e9848ac8ebd349e1fe2c15a46c56566a106c7 Author: Oliver Smith-Denny <o...@microsoft.com> Date: 2024-11-13 (Wed, 13 Nov 2024) Changed paths: M OvmfPkg/AmdSev/AmdSevX64.fdf M OvmfPkg/Bhyve/BhyveX64.fdf M OvmfPkg/Bhyve/ResetVector/ResetVector.inf M OvmfPkg/CloudHv/CloudHvX64.fdf M OvmfPkg/IntelTdx/IntelTdxX64.fdf M OvmfPkg/Microvm/MicrovmX64.fdf M OvmfPkg/OvmfPkgIa32.fdf M OvmfPkg/OvmfPkgIa32X64.fdf M OvmfPkg/OvmfPkgX64.fdf M OvmfPkg/OvmfXen.fdf M OvmfPkg/ResetVector/ResetVector.inf M OvmfPkg/XenResetVector/XenResetVector.inf Log Message: ----------- OvmfPkg: Make ResetVector USER_DEFINED Following the change in UefiCpuPkg, this moves OvmfPkg's ResetVectors to USER_DEFINED modules to prevent any NULL libraries from being linked against them, allowing for expected behavior from the ResetVector and for simpler implementation of NULL libraries applied globally. Signed-off-by: Oliver Smith-Denny <o...@linux.microsoft.com> Commit: ef4f3aa3f7e3c28c7f0e1a3c35711f1a85becd71 https://github.com/tianocore/edk2/commit/ef4f3aa3f7e3c28c7f0e1a3c35711f1a85becd71 Author: Oliver Smith-Denny <o...@microsoft.com> Date: 2024-11-13 (Wed, 13 Nov 2024) Changed paths: M ArmPkg/ArmPkg.dsc M ArmPlatformPkg/ArmPlatformPkg.dsc M ArmVirtPkg/ArmVirt.dsc.inc M CryptoPkg/CryptoPkg.dsc M DynamicTablesPkg/DynamicTablesPkg.dsc M EmbeddedPkg/EmbeddedPkg.dsc M EmulatorPkg/EmulatorPkg.dsc M FatPkg/FatPkg.dsc M IntelFsp2Pkg/IntelFsp2Pkg.dsc M IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc M MdeModulePkg/MdeModulePkg.dsc M MdePkg/MdeLibs.dsc.inc M NetworkPkg/NetworkPkg.dsc M OvmfPkg/AmdSev/AmdSevX64.dsc M OvmfPkg/Bhyve/BhyveX64.dsc M OvmfPkg/CloudHv/CloudHvX64.dsc M OvmfPkg/IntelTdx/IntelTdxX64.dsc M OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc M OvmfPkg/Microvm/MicrovmX64.dsc M OvmfPkg/OvmfPkgIa32.dsc M OvmfPkg/OvmfPkgIa32X64.dsc M OvmfPkg/OvmfPkgX64.dsc M OvmfPkg/OvmfXen.dsc M OvmfPkg/RiscVVirt/RiscVVirt.dsc.inc M PcAtChipsetPkg/PcAtChipsetPkg.dsc M PrmPkg/PrmPkg.dsc M RedfishPkg/RedfishPkg.dsc M SecurityPkg/SecurityPkg.dsc M ShellPkg/ShellPkg.dsc M SignedCapsulePkg/SignedCapsulePkg.dsc M SourceLevelDebugPkg/SourceLevelDebugPkg.dsc M UefiCpuPkg/UefiCpuPkg.dsc M UefiPayloadPkg/UefiPayloadPkg.dsc M UnitTestFrameworkPkg/UnitTestFrameworkPkgTarget.dsc.inc Log Message: ----------- MdePkg: MdeLibs.dsc.inc: Apply StackCheckLibNull to All Module Types Now that the ResetVectors are USER_DEFINED modules, they will not be linked against StackCheckLibNull, which were the only modules causing issues. So, we can now remove the kludge we had before and the requirement for every DSC to include StackCheckLibNull for SEC modules and just apply StackCheckLibNull globally. This also changes every DSC to drop the SEC definition of StackCheckLibNull. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Oliver Smith-Denny <o...@linux.microsoft.com> Compare: https://github.com/tianocore/edk2/compare/0c56edacfb72...ef4f3aa3f7e3 To unsubscribe from these emails, change your notification settings at https://github.com/tianocore/edk2/settings/notifications _______________________________________________ edk2-commits mailing list edk2-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-commits