diff options
author | bunnei <bunneidev@gmail.com> | 2022-02-21 13:38:52 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-21 13:38:52 -0700 |
commit | 8d46c3cc66f20cd817b2dd1ca713d7b7afb25d6a (patch) | |
tree | 4e5ad04403eac4b738b5fbb62c0c2731cd8afc40 | |
parent | 298469526501b3bd576ff1ab53d089097506a2e7 (diff) | |
parent | c9260a75f67f256f23ed4e4e13154257ed0575a0 (diff) |
Merge pull request #7920 from bunnei/fix-unmap-pages
core: hle: kernel: KPageTable: Fix UnmapPages.
-rw-r--r-- | src/core/hle/kernel/k_page_table.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/core/hle/kernel/k_page_table.cpp b/src/core/hle/kernel/k_page_table.cpp index 912853e5c2..a9eb70b8ba 100644 --- a/src/core/hle/kernel/k_page_table.cpp +++ b/src/core/hle/kernel/k_page_table.cpp @@ -681,9 +681,8 @@ ResultCode KPageTable::UnmapPages(VAddr addr, const KPageLinkedList& page_linked VAddr cur_addr{addr}; for (const auto& node : page_linked_list.Nodes()) { - const std::size_t num_pages{(addr - cur_addr) / PageSize}; - if (const auto result{ - Operate(addr, num_pages, KMemoryPermission::None, OperationType::Unmap)}; + if (const auto result{Operate(cur_addr, node.GetNumPages(), KMemoryPermission::None, + OperationType::Unmap)}; result.IsError()) { return result; } |