From 4334dc0edaad05f21bf1bf733e4911e188a96294 Mon Sep 17 00:00:00 2001 From: Stephen Miller Date: Wed, 22 Jan 2025 08:23:38 -0600 Subject: [PATCH] Update is_pooled and is_committed based on sceKernelMemoryPoolReserve tests Seems like I've uncovered an issue with the memory pools implementation during my tests, as sceKernelMemoryPoolReserve uses a different memory type from sceKernelMemoryPoolDecommit in hardware tests. --- src/core/memory.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/core/memory.cpp b/src/core/memory.cpp index 94e74664a..07b475c7d 100644 --- a/src/core/memory.cpp +++ b/src/core/memory.cpp @@ -529,8 +529,8 @@ int MemoryManager::VirtualQuery(VAddr addr, int flags, info->is_flexible.Assign(vma.type == VMAType::Flexible); info->is_direct.Assign(vma.type == VMAType::Direct); info->is_stack.Assign(vma.type == VMAType::Stack); - info->is_pooled.Assign(vma.type == VMAType::PoolReserved); - info->is_committed.Assign(vma.type != VMAType::Reserved); + info->is_pooled.Assign(vma.type == VMAType::PoolReserved || vma.type == VMAType::Pooled); + info->is_committed.Assign(vma.type != VMAType::Reserved && vma.type != VMAType::PoolReserved); vma.name.copy(info->name.data(), std::min(info->name.size(), vma.name.size())); if (vma.type == VMAType::Direct) { const auto dmem_it = FindDmemArea(vma.phys_base);