diff options
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
| -rw-r--r-- | src/core/hle/kernel/svc.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index cbd5b69aa..92bb80404 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | // Refer to the license.txt file included. | 3 | // Refer to the license.txt file included. |
| 4 | 4 | ||
| 5 | #include <algorithm> | 5 | #include <algorithm> |
| 6 | #include <inttypes.h> | ||
| 6 | 7 | ||
| 7 | #include "common/logging/log.h" | 8 | #include "common/logging/log.h" |
| 8 | #include "common/microprofile.h" | 9 | #include "common/microprofile.h" |
| @@ -443,6 +444,16 @@ static ResultCode MapSharedMemory(Handle shared_memory_handle, VAddr addr, u64 s | |||
| 443 | return RESULT_SUCCESS; | 444 | return RESULT_SUCCESS; |
| 444 | } | 445 | } |
| 445 | 446 | ||
| 447 | static ResultCode UnmapSharedMemory(Handle shared_memory_handle, VAddr addr, u64 size) { | ||
| 448 | LOG_WARNING(Kernel_SVC, | ||
| 449 | "called, shared_memory_handle=0x%08X, addr=0x%" PRIx64 ", size=0x%" PRIx64 "", | ||
| 450 | shared_memory_handle, addr, size); | ||
| 451 | |||
| 452 | SharedPtr<SharedMemory> shared_memory = g_handle_table.Get<SharedMemory>(shared_memory_handle); | ||
| 453 | |||
| 454 | return shared_memory->Unmap(g_current_process.get(), addr); | ||
| 455 | } | ||
| 456 | |||
| 446 | /// Query process memory | 457 | /// Query process memory |
| 447 | static ResultCode QueryProcessMemory(MemoryInfo* memory_info, PageInfo* /*page_info*/, | 458 | static ResultCode QueryProcessMemory(MemoryInfo* memory_info, PageInfo* /*page_info*/, |
| 448 | Handle process_handle, u64 addr) { | 459 | Handle process_handle, u64 addr) { |
| @@ -792,7 +803,7 @@ static const FunctionDef SVC_Table[] = { | |||
| 792 | {0x11, nullptr, "SignalEvent"}, | 803 | {0x11, nullptr, "SignalEvent"}, |
| 793 | {0x12, nullptr, "ClearEvent"}, | 804 | {0x12, nullptr, "ClearEvent"}, |
| 794 | {0x13, SvcWrap<MapSharedMemory>, "MapSharedMemory"}, | 805 | {0x13, SvcWrap<MapSharedMemory>, "MapSharedMemory"}, |
| 795 | {0x14, nullptr, "UnmapSharedMemory"}, | 806 | {0x14, SvcWrap<UnmapSharedMemory>, "UnmapSharedMemory"}, |
| 796 | {0x15, SvcWrap<CreateTransferMemory>, "CreateTransferMemory"}, | 807 | {0x15, SvcWrap<CreateTransferMemory>, "CreateTransferMemory"}, |
| 797 | {0x16, SvcWrap<CloseHandle>, "CloseHandle"}, | 808 | {0x16, SvcWrap<CloseHandle>, "CloseHandle"}, |
| 798 | {0x17, SvcWrap<ResetSignal>, "ResetSignal"}, | 809 | {0x17, SvcWrap<ResetSignal>, "ResetSignal"}, |