diff options
| author | 2018-03-14 22:09:22 -0400 | |
|---|---|---|
| committer | 2018-03-16 18:32:23 -0400 | |
| commit | 34a29ad051c271fef8328d9925fa7d0031ce2534 (patch) | |
| tree | 133f4f79bdd3abfa7d122303f70fb6ed45457704 /src | |
| parent | kernel: Move stack region outside of application heap. (diff) | |
| download | yuzu-34a29ad051c271fef8328d9925fa7d0031ce2534.tar.gz yuzu-34a29ad051c271fef8328d9925fa7d0031ce2534.tar.xz yuzu-34a29ad051c271fef8328d9925fa7d0031ce2534.zip | |
svc: Use more correct values for GetInfo MapRegion and NewMapRegion.
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/kernel/svc.cpp | 10 | ||||
| -rw-r--r-- | src/core/hle/kernel/vm_manager.cpp | 15 | ||||
| -rw-r--r-- | src/core/hle/kernel/vm_manager.h | 9 |
3 files changed, 5 insertions, 29 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index ad00a0c8b..118ce3ee5 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp | |||
| @@ -317,13 +317,13 @@ static ResultCode GetInfo(u64* result, u64 info_id, u64 handle, u64 info_sub_id) | |||
| 317 | *result = Core::CurrentProcess()->allowed_thread_priority_mask; | 317 | *result = Core::CurrentProcess()->allowed_thread_priority_mask; |
| 318 | break; | 318 | break; |
| 319 | case GetInfoType::MapRegionBaseAddr: | 319 | case GetInfoType::MapRegionBaseAddr: |
| 320 | *result = vm_manager.GetMapRegionBaseAddr(); | 320 | *result = Memory::MAP_REGION_VADDR; |
| 321 | break; | 321 | break; |
| 322 | case GetInfoType::MapRegionSize: | 322 | case GetInfoType::MapRegionSize: |
| 323 | *result = vm_manager.GetAddressSpaceSize(); | 323 | *result = Memory::MAP_REGION_SIZE; |
| 324 | break; | 324 | break; |
| 325 | case GetInfoType::HeapRegionBaseAddr: | 325 | case GetInfoType::HeapRegionBaseAddr: |
| 326 | *result = vm_manager.GetNewMapRegionBaseAddr() + vm_manager.GetNewMapRegionSize(); | 326 | *result = Memory::HEAP_VADDR; |
| 327 | break; | 327 | break; |
| 328 | case GetInfoType::HeapRegionSize: | 328 | case GetInfoType::HeapRegionSize: |
| 329 | *result = Memory::HEAP_SIZE; | 329 | *result = Memory::HEAP_SIZE; |
| @@ -347,10 +347,10 @@ static ResultCode GetInfo(u64* result, u64 info_id, u64 handle, u64 info_sub_id) | |||
| 347 | *result = vm_manager.GetAddressSpaceSize(); | 347 | *result = vm_manager.GetAddressSpaceSize(); |
| 348 | break; | 348 | break; |
| 349 | case GetInfoType::NewMapRegionBaseAddr: | 349 | case GetInfoType::NewMapRegionBaseAddr: |
| 350 | *result = vm_manager.GetNewMapRegionBaseAddr(); | 350 | *result = Memory::NEW_MAP_REGION_VADDR; |
| 351 | break; | 351 | break; |
| 352 | case GetInfoType::NewMapRegionSize: | 352 | case GetInfoType::NewMapRegionSize: |
| 353 | *result = vm_manager.GetNewMapRegionSize(); | 353 | *result = Memory::NEW_MAP_REGION_SIZE; |
| 354 | break; | 354 | break; |
| 355 | case GetInfoType::IsVirtualAddressMemoryEnabled: | 355 | case GetInfoType::IsVirtualAddressMemoryEnabled: |
| 356 | *result = Core::CurrentProcess()->is_virtual_address_memory_enabled; | 356 | *result = Core::CurrentProcess()->is_virtual_address_memory_enabled; |
diff --git a/src/core/hle/kernel/vm_manager.cpp b/src/core/hle/kernel/vm_manager.cpp index 9ea7e0406..4748297d1 100644 --- a/src/core/hle/kernel/vm_manager.cpp +++ b/src/core/hle/kernel/vm_manager.cpp | |||
| @@ -395,19 +395,4 @@ u64 VMManager::GetAddressSpaceSize() { | |||
| 395 | return MAX_ADDRESS; | 395 | return MAX_ADDRESS; |
| 396 | } | 396 | } |
| 397 | 397 | ||
| 398 | VAddr VMManager::GetMapRegionBaseAddr() { | ||
| 399 | LOG_WARNING(Kernel, "(STUBBED) called"); | ||
| 400 | return Memory::HEAP_VADDR; | ||
| 401 | } | ||
| 402 | |||
| 403 | VAddr VMManager::GetNewMapRegionBaseAddr() { | ||
| 404 | LOG_WARNING(Kernel, "(STUBBED) called"); | ||
| 405 | return 0x8000000; | ||
| 406 | } | ||
| 407 | |||
| 408 | u64 VMManager::GetNewMapRegionSize() { | ||
| 409 | LOG_WARNING(Kernel, "(STUBBED) called"); | ||
| 410 | return 0x8000000; | ||
| 411 | } | ||
| 412 | |||
| 413 | } // namespace Kernel | 398 | } // namespace Kernel |
diff --git a/src/core/hle/kernel/vm_manager.h b/src/core/hle/kernel/vm_manager.h index f5493649b..4d66146f6 100644 --- a/src/core/hle/kernel/vm_manager.h +++ b/src/core/hle/kernel/vm_manager.h | |||
| @@ -201,15 +201,6 @@ public: | |||
| 201 | /// Gets the total address space address size, used by svcGetInfo | 201 | /// Gets the total address space address size, used by svcGetInfo |
| 202 | u64 GetAddressSpaceSize(); | 202 | u64 GetAddressSpaceSize(); |
| 203 | 203 | ||
| 204 | /// Gets the map region base address, used by svcGetInfo | ||
| 205 | VAddr GetMapRegionBaseAddr(); | ||
| 206 | |||
| 207 | /// Gets the base address for a new memory region, used by svcGetInfo | ||
| 208 | VAddr GetNewMapRegionBaseAddr(); | ||
| 209 | |||
| 210 | /// Gets the size for a new memory region, used by svcGetInfo | ||
| 211 | u64 GetNewMapRegionSize(); | ||
| 212 | |||
| 213 | /// Each VMManager has its own page table, which is set as the main one when the owning process | 204 | /// Each VMManager has its own page table, which is set as the main one when the owning process |
| 214 | /// is scheduled. | 205 | /// is scheduled. |
| 215 | Memory::PageTable page_table; | 206 | Memory::PageTable page_table; |