aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/x86_64/include/arch/memory/paging/page_entry.hpp5
-rw-r--r--arch/x86_64/src/memory/paging/page_table.cpp3
2 files changed, 6 insertions, 2 deletions
diff --git a/arch/x86_64/include/arch/memory/paging/page_entry.hpp b/arch/x86_64/include/arch/memory/paging/page_entry.hpp
index ba972d6..bfb0184 100644
--- a/arch/x86_64/include/arch/memory/paging/page_entry.hpp
+++ b/arch/x86_64/include/arch/memory/paging/page_entry.hpp
@@ -35,6 +35,11 @@ namespace teachos::arch::memory::paging
};
/**
+ * @brief Defaulted constructor.
+ */
+ entry() = default;
+
+ /**
* @brief Creates a new entry object from a 64bit address. Should follow the scheme where bit index 12 - 51 are the
* actual address and the other bits are flags.
*
diff --git a/arch/x86_64/src/memory/paging/page_table.cpp b/arch/x86_64/src/memory/paging/page_table.cpp
index 4747e0b..c9b4a37 100644
--- a/arch/x86_64/src/memory/paging/page_table.cpp
+++ b/arch/x86_64/src/memory/paging/page_table.cpp
@@ -85,8 +85,7 @@ namespace teachos::arch::memory::paging
// could be incredibly hard to debug later.
exception_handling::assert(index < PAGE_TABLE_ENTRY_COUNT, "[Page Table] Index out of bounds");
// TODO: This section seems to return completly invalid entry, debugger doesn't even show a value? Revert once fixed
- auto & entry = entries[index];
- return entry;
+ return entries[index];
}
auto page_table::next_table_address(std::size_t table_index) -> std::optional<std::size_t>