diff options
author | Liam <byteslice@airmail.cc> | 2023-08-25 15:39:18 +0200 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2023-08-25 15:39:18 +0200 |
commit | 9e134c3da2b34d2945c6e2e54e3f43cfd901caaf (patch) | |
tree | 4a61e1e9cb341e0355e8d203aa602ac5bacca8d4 | |
parent | Merge pull request #11327 from liamwhite/skyline-2 (diff) | |
download | yuzu-9e134c3da2b34d2945c6e2e54e3f43cfd901caaf.tar yuzu-9e134c3da2b34d2945c6e2e54e3f43cfd901caaf.tar.gz yuzu-9e134c3da2b34d2945c6e2e54e3f43cfd901caaf.tar.bz2 yuzu-9e134c3da2b34d2945c6e2e54e3f43cfd901caaf.tar.lz yuzu-9e134c3da2b34d2945c6e2e54e3f43cfd901caaf.tar.xz yuzu-9e134c3da2b34d2945c6e2e54e3f43cfd901caaf.tar.zst yuzu-9e134c3da2b34d2945c6e2e54e3f43cfd901caaf.zip |
-rw-r--r-- | src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp b/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp index 07e570a9f..7d7bb8687 100644 --- a/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp +++ b/src/core/hle/service/nvdrv/devices/nvhost_as_gpu.cpp @@ -204,9 +204,11 @@ void nvhost_as_gpu::FreeMappingLocked(u64 offset) { if (!mapping->fixed) { auto& allocator{mapping->big_page ? *vm.big_page_allocator : *vm.small_page_allocator}; u32 page_size_bits{mapping->big_page ? vm.big_page_size_bits : VM::PAGE_SIZE_BITS}; + u32 page_size{mapping->big_page ? vm.big_page_size : VM::YUZU_PAGESIZE}; + u64 aligned_size{Common::AlignUp(mapping->size, page_size)}; allocator.Free(static_cast<u32>(mapping->offset >> page_size_bits), - static_cast<u32>(mapping->size >> page_size_bits)); + static_cast<u32>(aligned_size >> page_size_bits)); } // Sparse mappings shouldn't be fully unmapped, just returned to their sparse state |