From 9b796efabcb04486c13acfa7053f44cf52a8a5cd Mon Sep 17 00:00:00 2001 From: georgemoralis Date: Mon, 29 Jul 2024 15:31:59 +0300 Subject: [PATCH] improved vaddr conversion --- src/core/libraries/kernel/memory_management.cpp | 5 ++--- src/core/libraries/kernel/memory_management.h | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/core/libraries/kernel/memory_management.cpp b/src/core/libraries/kernel/memory_management.cpp index f54b3a8d..d396e1d7 100644 --- a/src/core/libraries/kernel/memory_management.cpp +++ b/src/core/libraries/kernel/memory_management.cpp @@ -274,7 +274,7 @@ s32 PS4_SYSV_ABI sceKernelBatchMap2(OrbisKernelBatchMapEntry* entries, int numEn return result; } -s32 PS4_SYSV_ABI sceKernelSetVirtualRangeName(void* addr, size_t len, const char* name) { +s32 PS4_SYSV_ABI sceKernelSetVirtualRangeName(const void* addr, size_t len, const char* name) { static constexpr size_t MaxNameSize = 32; if (std::strlen(name) > MaxNameSize) { LOG_ERROR(Kernel_Vmm, "name exceeds 32 bytes!"); @@ -286,8 +286,7 @@ s32 PS4_SYSV_ABI sceKernelSetVirtualRangeName(void* addr, size_t len, const char return ORBIS_KERNEL_ERROR_EFAULT; } auto* memory = Core::Memory::Instance(); - const VAddr vaddr = reinterpret_cast(addr); - memory->NameVirtualRange(vaddr, len, name); + memory->NameVirtualRange(std::bit_cast(addr), len, name); return ORBIS_OK; } } // namespace Libraries::Kernel diff --git a/src/core/libraries/kernel/memory_management.h b/src/core/libraries/kernel/memory_management.h index 0d2196f1..25a4a9f0 100644 --- a/src/core/libraries/kernel/memory_management.h +++ b/src/core/libraries/kernel/memory_management.h @@ -108,6 +108,6 @@ s32 PS4_SYSV_ABI sceKernelBatchMap(OrbisKernelBatchMapEntry* entries, int numEnt s32 PS4_SYSV_ABI sceKernelBatchMap2(OrbisKernelBatchMapEntry* entries, int numEntries, int* numEntriesOut, int flags); -s32 PS4_SYSV_ABI sceKernelSetVirtualRangeName(void* addr, size_t len, const char* name); +s32 PS4_SYSV_ABI sceKernelSetVirtualRangeName(const void* addr, size_t len, const char* name); } // namespace Libraries::Kernel