MCPcopy Create free account
hub / github.com/Bareflank/hypervisor / initialize_direct_map_rpt

Method initialize_direct_map_rpt

kernel/src/ext_t.hpp:914–927  ·  view source on GitHub ↗

<!-- description --> @brief Initializes a direct map root page table to support the execution of this extension (with the inclusion of a direct map). <!-- inputs/outputs --> @param mut_tls the current TLS block @param mut_page_pool the page_pool_t to use @param pmut_rpt the root page table to initialize @return Returns bsl::errc_success on success, bsl::errc_failure and friends otherwise

Source from the content-addressed store, hash-verified

912 /// and friends otherwise
913 ///
914 [[nodiscard]] constexpr auto
915 initialize_direct_map_rpt(
916 tls_t &mut_tls, page_pool_t &mut_page_pool, root_page_table_t *const pmut_rpt) noexcept
917 -> bsl::errc_type
918 {
919 auto const ret{pmut_rpt->initialize(mut_tls, mut_page_pool)};
920 if (bsl::unlikely(!ret)) {
921 bsl::print<bsl::V>() << bsl::here();
922 return ret;
923 }
924
925 pmut_rpt->add_tables(mut_tls, m_main_rpt);
926 return bsl::errc_success;
927 }
928
929 /// <!-- description -->
930 /// @brief Makes sure that all m_main_rpt aliases are updated

Callers 1

signal_vm_createdMethod · 0.95

Calls 2

initializeMethod · 0.45
add_tablesMethod · 0.45

Tested by

no test coverage detected