diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-08-04 14:32:01 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-08-04 14:32:01 +0100 |
| commit | 7f766a5a7f5cf1fed9ad0792e545eff724952ae9 (patch) | |
| tree | e9b59b2716c2f427d93ad69d0eedb2e740059b83 /dev/kernel | |
| parent | c02e7972bd2a308d9c9ac3aec78d0530d5498b0a (diff) | |
feat&fix: critical patches to the PEFCodeMgr.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel')
| -rw-r--r-- | dev/kernel/src/PEFCodeMgr.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/dev/kernel/src/PEFCodeMgr.cc b/dev/kernel/src/PEFCodeMgr.cc index 357c279b..71e4e232 100644 --- a/dev/kernel/src/PEFCodeMgr.cc +++ b/dev/kernel/src/PEFCodeMgr.cc @@ -78,7 +78,7 @@ PEFLoader::PEFLoader(const Char* path) : fCachedBlob(nullptr), fFatBinary(false) container->Magic[3] == kPefMagic[3] && container->Magic[4] == kPefMagic[4] && container->Abi == kPefAbi) { return; - } else if (container->Cpu == Detail::ldr_get_platform() && container->Magic[0] == kPefMagicFat[0] && + } else if (container->Magic[0] == kPefMagicFat[0] && container->Magic[1] == kPefMagicFat[1] && container->Magic[2] == kPefMagicFat[2] && container->Magic[3] == kPefMagicFat[3] && container->Magic[4] == kPefMagicFat[4] && container->Abi == kPefAbi) { @@ -173,12 +173,12 @@ ErrorOr<VoidPtr> PEFLoader::FindSymbol(const Char* name, Int32 kind) { kout << "PEFLoader: info: Loaded stub: " << container_header[index].Name << "!\r"; - auto ret = false; + auto ret = 0; auto pages_count = (container_header[index].VMSize + kPageSize - 1) / kPageSize; for (SizeT i_vm{}; i_vm < pages_count; ++i_vm) { - ret = HAL::mm_map_page((VoidPtr) (container_header[index].VMAddress + i_vm), + ret = HAL::mm_map_page((VoidPtr) (container_header[index].VMAddress + (i_vm * kPageSize)), (VoidPtr) HAL::mm_get_page_addr(container_blob_value), HAL::kMMFlagsPresent | HAL::kMMFlagsUser); |
