32863 Commits

Author SHA1 Message Date
Mikhail Krichanov
9bb63c464b Ring3: Refactored SysCallBootService() out of EFI_BOOT_SERVICES. 2024-09-03 13:21:20 +03:00
Mikhail Krichanov
c5d244956e Ring3: Defined SysCallReturnToCore for AARCH64,
forbade ExceptionHanlders to use EL0 stack.
2024-09-03 13:21:20 +03:00
Mikhail Krichanov
c542f9f3b0 Ring3: Fixed some page faults caused by wrong memory attribution. 2024-09-03 13:21:20 +03:00
Mikhail Krichanov
d03b93be3d Ring3: Defined SysCallBootService() for AARCH64. 2024-09-03 13:21:20 +03:00
Mikhail Krichanov
3fc05b0473 Ring3: Defined CallRing3() for AARCH64. 2024-09-03 13:21:19 +03:00
Mikhail Krichanov
04c34b8135 Ring3: Defined CpuGetMemoryAttributes(), DisableSMAP(), EnableSMAP() for AARCH64. 2024-09-03 13:21:19 +03:00
Mikhail Krichanov
d1fa366ba2 Ring3: Initialized DxeRing3 with Supervisor privileges. 2024-09-03 13:21:19 +03:00
Mikhail Krichanov
6dc6cd62d4 Ring3: Added EL0 and PAN support for AARCH64. 2024-09-03 13:21:19 +03:00
Mikhail Krichanov
bdd577e887 Ring3: Added dummy functions for ARM, AARCH64. 2024-09-03 13:21:19 +03:00
Mikhail Krichanov
149fb5719b SysCall: Some refactoring. 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
279c5338bc Ring3: Fixed interrupts handling for IA32. 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
044a40c898 Ring3: Fixed bug in IA32 SetPosition() and Open(). 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
2f5a386490 Ring3: Fixed bug in Ring3LocateHandleBuffer(),
added SysCallNames.
2024-09-03 13:19:17 +03:00
Mikhail Krichanov
5339dcdfe3 Ring3: Moved UINT64 arguments to the end of argument list to fix IA32 stack. 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
93743d58e1 SysCall: Fixed bug in IA32 CallInstallMultipleProtocolInterfaces(). 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
99d5d6b5a9 SysCall: Replaced AllocatePool() with CoreAllocatePages(). 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
ede5387afd Ring3: Fixed TSS initialization. 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
6d282f1dd3 Build: Fixed compilation of X86 Firmwares. 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
703dea11b3 SysCall: Fixed memory corruption in IA32. 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
c7307143f5 SysCall: Added IA32 support. 2024-09-03 13:19:17 +03:00
Mikhail Krichanov
9bf5a1d5f0 Ring3: Moved platform dependant initialization to separate files. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
0ce839dc64 SysCall: Fixed MdeModulePkg compilation for XCODE5. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
233e9e0a23 SysCall: Fixed MdeModulePkg compilation for VS2019. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
7e372019d2 MdeModulePkg: Fixed MdeModulePkg compilation. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
5e1fe3f20c OvmfPkg: Added DxeRing3 driver, placed Fat driver into Ring3. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
c779a246e9 Ring3: Properly freed Ring3 resources. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
85fcc4774c Ring3: Added FreeProtocolsList(). 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
ca144b0173 Ring3: Moved InitializeRing3() to SysCall directory. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
98b973a762 SysCall: Fixed UnicodeFatToStr wrapper. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
6c366a9d5f Ring3: Added SysCallCalculateCrc32 wrapper. 2024-09-03 13:19:16 +03:00
Mikhail Krichanov
7144df121c SysCall: Fixed UnicodeCollation wrappers. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
e6d42f6e5a SysCall: Refactored protocols handling. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
43483580fb Ring3: Fixed Ring3LocateHandleBuffer(). 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
996bc3c55f Ring3: Added SysCallGetVariable wrapper. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
83d58a276c Ring3: Added UnicodeCollationProtocol wrappers. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
a004745232 Ring3: Added Runtime Services wrappers. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
d4bdb042e1 Ring3: Added debug printings and some fixes for FAT wrappers. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
38e92b2072 Ring3: Refactored exception handling. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
8f29742b72 SysCall: Refactored data segment selectors' switching. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
5b281e2c16 Ring3: Forbade Ring3 accsess to all ports but for UART
to allow DEBUG printing.
2024-09-03 13:19:15 +03:00
Mikhail Krichanov
eb0a233529 SysCall: Added checks of user variables. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
f3ce095edb Ring3: Fixed interrrupts handling. 2024-09-03 13:19:15 +03:00
Mikhail Krichanov
4322e50e13 SysCall: Refactored EFI_FILE_PROTOCOL wrappers. 2024-09-03 13:19:14 +03:00
Mikhail Krichanov
d4f5ae14aa Ring3: Refactored out AllocateRing3Copy(). 2024-09-03 13:19:14 +03:00
Mikhail Krichanov
94017d9567 Ring3: Added PrepareRing3Interface(). 2024-09-03 13:19:14 +03:00
Mikhail Krichanov
c855d93030 SysCall: Fixed bug in BlockIo, DiskIo Write functions. 2024-09-03 13:19:14 +03:00
Mikhail Krichanov
09ab943f86 DxeRing3: Added FixInterface(). 2024-09-03 13:19:14 +03:00
Mikhail Krichanov
173d9edad4 MdeModulePkg: Refactored out CoreAcquireLockOrFail(), CoreAcquireLock()
and CoreReleaseLock().
2024-09-03 13:19:14 +03:00
Mikhail Krichanov
07188c19a8 Ring3: Added MemoryPoolLib into DxeRing3. 2024-09-03 13:19:14 +03:00
Mikhail Krichanov
68dce7677d MdeModulePkg: Moved CoreFreePoolPagesWithGuard() to Page.c and
AdjustPoolHeadA(), AdjustPoolHeadF() to MemoryPoolLib.
2024-09-03 13:19:14 +03:00