summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei2018-03-14 22:09:22 -0400
committerGravatar bunnei2018-03-16 18:32:23 -0400
commit34a29ad051c271fef8328d9925fa7d0031ce2534 (patch)
tree133f4f79bdd3abfa7d122303f70fb6ed45457704 /src
parentkernel: Move stack region outside of application heap. (diff)
downloadyuzu-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.cpp10
-rw-r--r--src/core/hle/kernel/vm_manager.cpp15
-rw-r--r--src/core/hle/kernel/vm_manager.h9
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
398VAddr VMManager::GetMapRegionBaseAddr() {
399 LOG_WARNING(Kernel, "(STUBBED) called");
400 return Memory::HEAP_VADDR;
401}
402
403VAddr VMManager::GetNewMapRegionBaseAddr() {
404 LOG_WARNING(Kernel, "(STUBBED) called");
405 return 0x8000000;
406}
407
408u64 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;