diff --git a/rpcs3/Emu/Cell/lv2/sys_memory.cpp b/rpcs3/Emu/Cell/lv2/sys_memory.cpp index 4c9e0e8c3e..6ec7031ac4 100644 --- a/rpcs3/Emu/Cell/lv2/sys_memory.cpp +++ b/rpcs3/Emu/Cell/lv2/sys_memory.cpp @@ -18,6 +18,8 @@ lv2_memory_alloca::lv2_memory_alloca(u32 size, u32 align, u64 flags, const std:: error_code sys_memory_allocate(u32 size, u64 flags, vm::ptr alloc_addr) { + vm::temporary_unlock(); + sys_memory.warning("sys_memory_allocate(size=0x%x, flags=0x%llx, alloc_addr=*0x%x)", size, flags, alloc_addr); // Check allocation size @@ -67,6 +69,8 @@ error_code sys_memory_allocate(u32 size, u64 flags, vm::ptr alloc_addr) error_code sys_memory_allocate_from_container(u32 size, u32 cid, u64 flags, vm::ptr alloc_addr) { + vm::temporary_unlock(); + sys_memory.warning("sys_memory_allocate_from_container(size=0x%x, cid=0x%x, flags=0x%llx, alloc_addr=*0x%x)", size, cid, flags, alloc_addr); // Check allocation size @@ -132,6 +136,8 @@ error_code sys_memory_allocate_from_container(u32 size, u32 cid, u64 flags, vm:: error_code sys_memory_free(u32 addr) { + vm::temporary_unlock(); + sys_memory.warning("sys_memory_free(addr=0x%x)", addr); const auto area = vm::get(vm::any, addr); @@ -190,6 +196,8 @@ error_code sys_memory_free(u32 addr) error_code sys_memory_get_page_attribute(u32 addr, vm::ptr attr) { + vm::temporary_unlock(); + sys_memory.trace("sys_memory_get_page_attribute(addr=0x%x, attr=*0x%x)", addr, attr); if (!vm::check_addr(addr)) @@ -223,6 +231,8 @@ error_code sys_memory_get_page_attribute(u32 addr, vm::ptr attr error_code sys_memory_get_user_memory_size(vm::ptr mem_info) { + vm::temporary_unlock(); + sys_memory.warning("sys_memory_get_user_memory_size(mem_info=*0x%x)", mem_info); // Get "default" memory container @@ -242,6 +252,8 @@ error_code sys_memory_get_user_memory_size(vm::ptr mem_info) error_code sys_memory_container_create(vm::ptr cid, u32 size) { + vm::temporary_unlock(); + sys_memory.warning("sys_memory_container_create(cid=*0x%x, size=0x%x)", cid, size); // Round down to 1 MB granularity @@ -268,6 +280,8 @@ error_code sys_memory_container_create(vm::ptr cid, u32 size) error_code sys_memory_container_destroy(u32 cid) { + vm::temporary_unlock(); + sys_memory.warning("sys_memory_container_destroy(cid=0x%x)", cid); const auto ct = idm::withdraw(cid, [](lv2_memory_container& ct) -> CellError @@ -299,6 +313,8 @@ error_code sys_memory_container_destroy(u32 cid) error_code sys_memory_container_get_size(vm::ptr mem_info, u32 cid) { + vm::temporary_unlock(); + sys_memory.warning("sys_memory_container_get_size(mem_info=*0x%x, cid=0x%x)", mem_info, cid); const auto ct = idm::get(cid);