From de2fb183cc9c0fb6ac62953d28f6eae5ee9025eb Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Sat, 27 Oct 2018 15:02:39 +0200 Subject: [PATCH] Rename "kernel map" concept to just "ksyms" --- Kernel/_fs_contents | Bin 1024000 -> 1024000 bytes Kernel/init.cpp | 8 ++++---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Kernel/_fs_contents b/Kernel/_fs_contents index 9e4402d6903a1cb727a396a3d1f0603ea9e57e03..1adddde26b8f0b28d1a3698eec64c8ca3775aa32 100644 GIT binary patch delta 57529 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 Y1b2H@1W$Wb1aEs*1mE_o2>xmA01D@W3;+NC diff --git a/Kernel/init.cpp b/Kernel/init.cpp index b36563dc6d..64ade214da 100644 --- a/Kernel/init.cpp +++ b/Kernel/init.cpp @@ -27,7 +27,7 @@ #include "RTC.h" #define TEST_VFS -#define KERNEL_MAP +#define KSYMS //#define STRESS_TEST_SPAWNING //#define TEST_ELF_LOADER @@ -74,7 +74,7 @@ const KSym* ksymbolicate(dword address) return nullptr; } -static void loadKernelMap(const ByteBuffer& buffer) +static void loadKsyms(const ByteBuffer& buffer) { s_ksyms = new Vector; auto* bufptr = (const char*)buffer.pointer(); @@ -139,7 +139,7 @@ static void init_stage2() vfs->mountRoot(e2fs.copyRef()); -#ifdef KERNEL_MAP +#ifdef KSYMS { auto handle = vfs->open("/kernel.map"); if (!handle) { @@ -147,7 +147,7 @@ static void init_stage2() } else { auto buffer = handle->readEntireFile(); ASSERT(buffer); - loadKernelMap(buffer); + loadKsyms(buffer); } } #endif