aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/include
diff options
context:
space:
mode:
authorMatteo Gmür <matteo.gmuer1@ost.ch>2025-05-16 09:58:57 +0000
committerMatteo Gmür <matteo.gmuer1@ost.ch>2025-05-16 09:58:57 +0000
commitd4cc546df6eba2dd287785f1a63fbcce4a1b9bc0 (patch)
treea22b7a91ac0f55c37dbee6516bf9103fcc89b548 /arch/x86_64/include
parent06b6e20ba921a062b71c86df8859eaaea4b75cb2 (diff)
downloadteachos-d4cc546df6eba2dd287785f1a63fbcce4a1b9bc0.tar.xz
teachos-d4cc546df6eba2dd287785f1a63fbcce4a1b9bc0.zip
Attempt to move atomic into stl text as well
Diffstat (limited to 'arch/x86_64/include')
-rw-r--r--arch/x86_64/include/arch/memory/paging/kernel_mapper.hpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/x86_64/include/arch/memory/paging/kernel_mapper.hpp b/arch/x86_64/include/arch/memory/paging/kernel_mapper.hpp
index ca7e2f9..94c937d 100644
--- a/arch/x86_64/include/arch/memory/paging/kernel_mapper.hpp
+++ b/arch/x86_64/include/arch/memory/paging/kernel_mapper.hpp
@@ -144,24 +144,24 @@ namespace teachos::arch::memory::paging
// Required to be accessible in User Mode:
// - .boot_rodata (Contains constant data stored in ROM)
// - .boot_bss (Contains statically allocated variables)
- // - .user_text (Contains the actual code executed)
+ // - .user_text (Contains the actual user code executed)
// - .user_data (Contains static user variables)
- // - .stl_text (Contains code for custom std implementations)
+ // - .stl_text (Contains code for custom std implementations and standard library code)
if (section.physical_address == 0x100000 /* .boot_rodata */ ||
section.physical_address == 0x102000 /* .boot_bss */ ||
- section.physical_address == 0x218000 /* .stl_text */)
+ section.physical_address == 0x209000 /* .stl_text */)
{
entry.set_user_accessible();
entry.set_global();
}
- // TODO: We should be able to remove this somehow
- if (section.physical_address == 0x209000 /* .text */)
+ // TODO: Can be removed once stl has been completly mapped into stl text
+ if (section.physical_address == 0x20A000 /* .text */)
{
entry.set_user_accessible();
}
- if (section.physical_address == 0x217000 /* .user_text */ ||
+ if (section.physical_address == 0x218000 /* .user_text */ ||
section.physical_address == 0x21E000 /* .user_data */)
{
entry.set_user_accessible();