diff options
| author | 2021-05-20 18:15:59 -0700 | |
|---|---|---|
| committer | 2021-05-20 21:41:52 -0700 | |
| commit | b4fc2e52a2d51f8958b77fbe4fb76c854cd4593b (patch) | |
| tree | 64efafb1dfba8ba239d84d35fd78a584a6f4cb3a /src/core/memory.cpp | |
| parent | Revert "WORKAROUND: Do not use slab heap while we track down issues with reso... (diff) | |
| download | yuzu-b4fc2e52a2d51f8958b77fbe4fb76c854cd4593b.tar.gz yuzu-b4fc2e52a2d51f8958b77fbe4fb76c854cd4593b.tar.xz yuzu-b4fc2e52a2d51f8958b77fbe4fb76c854cd4593b.zip | |
hle: kernel: Use host memory allocations for KSlabMemory.
- There are some issues with the current workaround, we will just use host memory until we have a complete kernel memory implementation.
Diffstat (limited to 'src/core/memory.cpp')
| -rw-r--r-- | src/core/memory.cpp | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/src/core/memory.cpp b/src/core/memory.cpp index b4c56e1c1..bf2ef7816 100644 --- a/src/core/memory.cpp +++ b/src/core/memory.cpp | |||
| @@ -82,22 +82,6 @@ struct Memory::Impl { | |||
| 82 | return nullptr; | 82 | return nullptr; |
| 83 | } | 83 | } |
| 84 | 84 | ||
| 85 | u8* GetKernelBuffer(VAddr start_vaddr, size_t size) { | ||
| 86 | // TODO(bunnei): This is just a workaround until we have kernel memory layout mapped & | ||
| 87 | // managed. Until then, we use this to allocate and access kernel memory regions. | ||
| 88 | |||
| 89 | auto search = kernel_memory_regions.find(start_vaddr); | ||
| 90 | if (search != kernel_memory_regions.end()) { | ||
| 91 | return search->second.get(); | ||
| 92 | } | ||
| 93 | |||
| 94 | std::unique_ptr<u8[]> new_memory_region{new u8[size]}; | ||
| 95 | u8* raw_ptr = new_memory_region.get(); | ||
| 96 | kernel_memory_regions[start_vaddr] = std::move(new_memory_region); | ||
| 97 | |||
| 98 | return raw_ptr; | ||
| 99 | } | ||
| 100 | |||
| 101 | u8 Read8(const VAddr addr) { | 85 | u8 Read8(const VAddr addr) { |
| 102 | return Read<u8>(addr); | 86 | return Read<u8>(addr); |
| 103 | } | 87 | } |
| @@ -727,7 +711,6 @@ struct Memory::Impl { | |||
| 727 | } | 711 | } |
| 728 | 712 | ||
| 729 | Common::PageTable* current_page_table = nullptr; | 713 | Common::PageTable* current_page_table = nullptr; |
| 730 | std::unordered_map<VAddr, std::unique_ptr<u8[]>> kernel_memory_regions; | ||
| 731 | Core::System& system; | 714 | Core::System& system; |
| 732 | }; | 715 | }; |
| 733 | 716 | ||
| @@ -765,10 +748,6 @@ u8* Memory::GetPointer(VAddr vaddr) { | |||
| 765 | return impl->GetPointer(vaddr); | 748 | return impl->GetPointer(vaddr); |
| 766 | } | 749 | } |
| 767 | 750 | ||
| 768 | u8* Memory::GetKernelBuffer(VAddr start_vaddr, size_t size) { | ||
| 769 | return impl->GetKernelBuffer(start_vaddr, size); | ||
| 770 | } | ||
| 771 | |||
| 772 | const u8* Memory::GetPointer(VAddr vaddr) const { | 751 | const u8* Memory::GetPointer(VAddr vaddr) const { |
| 773 | return impl->GetPointer(vaddr); | 752 | return impl->GetPointer(vaddr); |
| 774 | } | 753 | } |