4122 Commits

Author SHA1 Message Date
Mikhail Krichanov
07188c19a8 Ring3: Added MemoryPoolLib into DxeRing3. 2024-09-03 13:19:14 +03:00
Mikhail Krichanov
126b21b719 Ring3: Added SysCallHandleProtocol and
SIMPLE_FILE_SYSTEM_PROTOCOL wrapper.
2024-09-03 13:10:47 +03:00
Mikhail Krichanov
26e4559889 Ring3: Added SysCallCloseProtocol. 2024-09-03 13:10:47 +03:00
Mikhail Krichanov
c8c5e3ea28 Ring3: Added BlockIo, DiskIo wrappers. 2024-09-03 13:10:47 +03:00
Mikhail Krichanov
3d8a6585a1 Ring3: Added SysCallFreePool,
fixed wrappers for EFI_DRIVER_BINDING_PROTOCOL.
2024-09-03 13:10:47 +03:00
Mikhail Krichanov
fa60f3ab00 Ring3: Refactored CallRing3(). 2024-09-03 13:10:47 +03:00
Mikhail Krichanov
b08d7cbb16 Ring3: Added SysCallAllocatePool. 2024-09-03 13:10:47 +03:00
Mikhail Krichanov
2090f6ef7e Ring3: Merged Ring3Dxe and Ring3UefiBootServicesTableLib into DxeRing3. 2024-09-03 13:10:46 +03:00
Mikhail Krichanov
ed1ee15c9c Ring3: Moved Ring3UefiBootServicesTableLib to Ring3Dxe. 2024-09-03 13:10:46 +03:00
Mikhail Krichanov
a72b753f60 Ring3: Added SysCallReturnToCore. 2024-09-03 13:10:46 +03:00
Mikhail Krichanov
df7a3fa963 Ring3: Fixed SysCallInstallMultipleProtocolInterfaces. 2024-09-03 13:10:46 +03:00
Mikhail Krichanov
046421d220 Ring3: Added SysCallInstallMultipleProtocolInterfaces draft. 2024-09-03 13:10:46 +03:00
Mikhail Krichanov
a746842957 Ring3: Refactored stack operations. 2024-09-03 13:10:46 +03:00
Mikhail Krichanov
fd478cb534 Ring3: Refactored out FunctionAddress from API. 2024-09-03 13:10:46 +03:00
Mikhail Krichanov
e4eb762d22 Ring3: Refactored out AllocateRing3Pages() BootService. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
40b3cd4420 Ring3: Refactored out AllocateCoreCopy() BootService. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
32e8bcbb62 Ring3: Moved SysCall code to DxeCore. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
b1d42c0979 Ring3: Moved some .nasm code to .c. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
a2955bd646 Ring3: Added SysCallOpenProtocol. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
de01af7081 Ring3: Added helper function AllocateCoreCopy(), refactored SysCall. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
87a397740d Ring3: Added helper function AllocateRing3Pages() and
draft of Ring3LocateProtocol().
2024-09-03 13:10:45 +03:00
Mikhail Krichanov
633521d91f Ring3: Fixed bug in calling Boot Service and did some refactoring. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
b5d0912201 Ring3: Added CoreSysCallStack. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
6502e73b0d Ring3: Added SYSCALL draft. 2024-09-03 13:10:45 +03:00
Mikhail Krichanov
98de0a212e MdePkg: Added Ring3UefiBootServicesTableLib draft. 2024-09-03 13:10:44 +03:00
Mikhail Krichanov
1112ad7822 Ring3: Added EnterUserImage(). 2024-09-03 13:10:44 +03:00
Mikhail Krichanov
db50e4edf1 Ring3: Added GetMemoryAttributes() into EFI_CPU_ARCH_PROTOCOL. 2024-09-03 13:10:44 +03:00
Mikhail Krichanov
db69014ad8 Ring3: Enabled SMAP and SMEP. 2024-09-03 13:10:44 +03:00
Mikhail Krichanov
8c069a27e5 Ring3: Added EFI_MEMORY_USER attribute. 2024-09-03 13:10:42 +03:00
Mikhail Krichanov
a6c369fc36 Fixed compilation of all packages tracked by CI after rebasing upon edk2-stable202405 tag. 2024-07-22 13:52:40 +03:00
Mikhail Krichanov
cf38766c99 Fixed compilation of all packages tracked by CI after rebasing upon edk2-stable202311. 2024-07-22 13:51:38 +03:00
Mikhail Krichanov
46050fc0fc SecurePE: Defined new PcdImageProtectionPolicy. 2024-07-22 13:49:00 +03:00
Mikhail Krichanov
21327695a0 UE: Support UE generation and consumption. 2024-07-22 13:49:00 +03:00
Mikhail Krichanov
028bb3e2c7 MdePkg/UefiImageLib: Introduce DebugAddress
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2024-07-22 13:49:00 +03:00
Mikhail Krichanov
410e9987f3 ImageTool: Rework PeEmit with dynamically-growing buffers 2024-07-22 13:49:00 +03:00
Mikhail Krichanov
5a8fe7214e MdePkg/UefiImageLib: Support multi-format and multi-source architecture
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2024-07-22 13:49:00 +03:00
Mikhail Krichanov
2ae98acd86 Drop support for the TE format 2024-07-22 13:47:18 +03:00
Mikhail Krichanov
091bca8bc8 MdePkg/MemoryAllocationLib: Add Allocate(Aligned)CodePages 2024-07-22 13:47:18 +03:00
Mikhail Krichanov
6cf6d8247a MdePkg: Introduce CommonMemoryAllocationLib 2024-07-22 13:47:18 +03:00
Marvin Häuser
55f9f59ebc MdeModulePkg: Manage MemoryProfileLib separately 2024-07-22 13:47:18 +03:00
Marvin Häuser
9d65ea7b79 MdePkg/Base.h: Introduce ALIGN_VALUE_SUBTRAHEND 2024-07-22 13:47:18 +03:00
Marvin Häuser
fcbf3d2b62 MdePkg/Base.h: Add support for C++ alignof
In preparation of including Base.h in C++ BaseTools programs, support
the C++ 11 alignof operator. The C _Alignof operator is not universally
supported in C++ mode across compiler toolchains and thus the current
definition may lead to compilation errors with said programs.

Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2024-07-22 13:47:17 +03:00
Marvin Häuser
572bcb051d MdePkg/Base.h: Only use C++ static_assert when supported
To support GoogleTest, 933b4c3 added support for C++ static_assert.
However, this is not a mandatory or universally supported C++ feature.
Guard its usage by the __cpp_static_assert support flag.

Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2024-07-22 13:47:17 +03:00
Mikhail Krichanov
a986e4f61e MdePkg: Add PCD to remove X perm from image sections with WX perms
This feature is useful for images created by old Apple mtoc utility.

Signed-off-by: Vitaly Cheptsov <vit9696@protonmail.com>
2024-07-22 13:47:17 +03:00
Savva Mitrofanov
a5fe2c29a3 MdePkg/UnitTest: Fixes CLANGPDB build
Signed-off-by: Savva Mitrofanov <savvamtr@gmail.com>
2024-07-22 13:47:17 +03:00
Mikhail Krichanov
f7a6409069 MdePkg: Defined DEBUG_RAISE() to facilitate fuzzing. 2024-07-22 13:47:17 +03:00
Mikhail Krichanov
00ef47984e MdePkg: Added BaseOverflowLib library. 2024-07-22 13:47:17 +03:00
Mikhail Krichanov
7b10859b36 BaseTools: Replaced GenFw with ImageTool and MicroTool. 2024-07-22 13:45:44 +03:00
Mikhail Krichanov
a955e8811b SecurePE: Replaced old PE loader with Secure one. 2024-07-22 13:42:14 +03:00
Mikhail Krichanov
621dd83262 MdePkg/X64/ProcessorBind.h: Fixes CLANGDWARF X64 compilation
Corrects typedef redefinition, in particular for openssl e_os2.h

Signed-off-by: Savva Mitrofanov <savvamtr@gmail.com>
2024-07-22 12:54:00 +03:00