summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/k_page_table.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* core: hle: kernel: Use result macros for new/changed code.bunnei2022-10-191-61/+50
|
* core: hle: kernel: k_process: Improve management of page table & cleanup.bunnei2022-10-191-9/+14
|
* core: hle: kernel: k_page_table: Impl. LockForUn/MapDeviceAddressSpace, cleanup.bunnei2022-10-191-405/+476
|
* core: hle: kernel: k_page_table: Update, and integrate with new KMemoryBlockManager/SlabManager.bunnei2022-10-191-240/+379
|
* core: device_memory: Templatize GetPointer(..).bunnei2022-10-191-3/+3
|
* core: kernel: Replace instances of KPageLinkedList with KPageGroupgerman772022-06-271-24/+24
|
* core: Replace all instances of ResultCode with Resultgerman772022-06-271-78/+75
|
* KPageTable: Remove extraneous assertMorph2022-06-221-1/+0
| | | | Since start is always 0 and VAddr is unsigned, we can safely remove this assert.
* common: Change semantics of UNREACHABLE to unconditionally crashLiam2022-06-141-10/+6
|
* kernel: fix KCodeMemory initializationLiam2022-06-091-11/+100
|
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
* hle: kernel: Invalidate entire icache in UnmapProcessMemory and UnmapCodeMemory (fixes #8174)tech-ticks2022-04-091-2/+9
|
* hle: kernel: k_page_table: Fix implementations of LockForCodeMemory & UnlockForCodeMemory.bunnei2022-03-261-48/+12
|
* hle: kernel: k_page_table: Implement LockMemoryAndOpen & UnlockMemory.bunnei2022-03-261-0/+105
|
* hle: kernel: k_page_table: Implement MakeAndOpenPageGroup & MakePageGroup.bunnei2022-03-261-0/+77
|
* core: hle: kernel: k_page_table: Add implementations of MapPages, UnmapPages, and FindFreeArea for TLS.bunnei2022-03-151-0/+126
|
* hle: kernel: KPageTable: Improve implementations of MapCodeMemory and UnmapCodeMemory.bunnei2022-03-081-45/+114
| | | | | - This makes these functions more accurate to the real HOS implementations. - Fixes memory access issues in Super Smash Bros. Ultimate that occur when un/mapping NROs.
* hle: kernel: k_memory_manager: Rework for latest kernel behavior.bunnei2022-02-281-16/+30
| | | | | | - Updates the KMemoryManager implementation against latest documentation. - Reworks KMemoryLayout to be accessed throughout the kernel. - Fixes an issue with pool sizes being incorrectly reported.
* hle: kernel: k_page_heap: Remove superfluous consexpr.bunnei2022-02-271-2/+2
|
* Merge pull request #7919 from bunnei/phys-mem-updatesbunnei2022-02-211-125/+430
|\ | | | | core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
| * fixup! core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.bunnei2022-02-191-22/+2
| |
| * core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.bunnei2022-02-191-107/+432
| | | | | | | | - Improves the implementations of MapPhysicalMemory and UnmapPhysicalMemory to more closely reflect latest HOS.
* | core: hle: kernel: KPageTable: Fix UnmapPages.bunnei2022-02-191-3/+2
|/ | | | - Fixes a logic bug in KPageTable::UnmapPages.
* Merge pull request #7835 from bunnei/page-table-lockbunnei2022-02-031-28/+37
|\ | | | | hle: kernel: KPageTable: Migrate locks to KScopedLightLock.
| * hle: kernel: KPageTable: Migrate locks to KScopedLightLock.bunnei2022-02-021-28/+37
| | | | | | | | - More accurately reflects real kernel behavior by using guest locks.
* | general: Replace NonCopyable struct with equivalentsLioncash2022-02-021-0/+2
|/
* core: hle: kernel: KPageTable: Various improvements to MapPages and UnmapPages.bunnei2022-01-231-22/+25
|
* core: hle: kernel: KPageTable: MapProcessCode: Various cleanup.bunnei2022-01-231-11/+12
|
* core: hle: kernel: KPageTable: ReserveTransferMemory: Various cleanup.bunnei2022-01-231-6/+6
|
* core: hle: kernel: KPageTable: ResetTransferMemory: Various cleanup.bunnei2022-01-231-6/+5
|
* core: hle: kernel: KPageTable: SetMemoryAttribute: Various cleanup.bunnei2022-01-231-2/+3
|
* core: hle: kernel: KPageTable: Operate: Assert lock ownership.bunnei2022-01-221-2/+2
|
* core: hle: kernel: KPageTable: SetHeapSize: Cleanup & take physical memory lock.bunnei2022-01-221-4/+7
|
* core: hle: kernel: Refactor Un/MapPhysicalMemory to remove unnecessary methods.bunnei2022-01-221-49/+38
|
* core: hle: kernel: Rename Un/Map to Un/MapMeory.bunnei2022-01-221-2/+2
|
* hle: kernel: k_memory_manager: Clear pages on allocation & free.bunnei2022-01-151-8/+9
| | | | | - Heap pages should be zero'd. - Also explicitly passed along heap allocation option.
* hle: kernel: k_page_table: Update SetProcessMemoryPermission.bunnei2022-01-121-31/+42
|
* hle: kernel: k_page_table: ReadAndWrite -> UserReadWrite.bunnei2022-01-121-14/+14
|
* hle: kernel: k_page_table: Rename *ProcessCodeMemory -> *CodeMemory.bunnei2022-01-121-2/+2
|
* core: hle: kernel: svc: Updates to SetMemoryAttribute and SetMemoryPermission.bunnei2022-01-081-13/+25
|
* core: hle: kernel: k_page_table: Update CheckMemoryState.bunnei2022-01-081-97/+104
|
* core: hle: kernel: Updated implementation of svcSetHeapSize.bunnei2021-12-281-52/+115
| | | | | - Updates our svcSetHeapSize with latest HOS, furthermore allowing heap size to properly be extended/shrunk. - Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_set_heap_size.cpp.
* core: hle: kernel: Implement SetMemoryPermission.bunnei2021-12-231-0/+27
| | | | - Not seen in any games yet, but validated with kernel tests.
* fix formattingitsmeft242021-12-061-4/+1
|
* kernel: svc: Implement Map/UnmapProcessMemory and Create/ControlCodeMemoryitsmeft242021-12-051-1/+123
| | | | Used by Skyline modding framework
* kernel: KPageTable: Rename SetCodeMemoryPermission to SetProcessMemoryPermissionMorph2021-11-211-2/+2
|
* general: Remove MakeResult helpersMorph2021-11-021-2/+2
| | | | This is made obsolete by the presence of implicit constructors.
* KPageTable: Perform ranged invalidation when unmapping code memoryMorph2021-10-131-0/+2
| | | | Co-Authored-By: Fernando S. <1731197+FernandoS27@users.noreply.github.com>
* common: Replace common_sizes into user-literalsWunkolo2021-06-241-1/+4
| | | | | | | | | | | | | Removes common_sizes.h in favor of having `_KiB`, `_MiB`, `_GiB`, etc user-literals within literals.h. To keep the global namespace clean, users will have to use: ``` using namespace Common::Literals; ``` to access these literals.
* general: Replace RESULT_SUCCESS with ResultSuccessMorph2021-06-021-30/+30
| | | | Transition to PascalCase for result names.
* core: Make variable shadowing a compile-time errorLioncash2021-05-161-5/+5
| | | | | | Now that we have most of core free of shadowing, we can enable the warning as an error to catch anything that may be remaining and also eliminate this class of logic bug entirely.
* hle: kernel: KPageTable: CanContain should not be constexpr.bunnei2021-05-061-1/+1
|
* hle: kernel: Improve MapSharedMemory and implement UnmapSharedMemory.bunnei2021-05-061-0/+39
|
* hle: kernel: Rename Process to KProcess.bunnei2021-05-061-1/+1
|
* hle: kernel: svc_results: Update naming..bunnei2021-05-061-3/+3
|
* hle: kernel: Migrate PageHeap/PageTable to KPageHeap/KPageTable.bunnei2021-02-191-0/+1190