summaryrefslogtreecommitdiff
path: root/src/common/host_memory.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #10508 from yuzu-emu/limeGravatar bunnei2023-06-051-2/+10
|\ | | | | Project Lime - yuzu Android Port
| * common: host_memory: Implement for Android.Gravatar bunnei2023-06-031-2/+10
| |
* | host_memory: merge adjacent placeholder mappings on LinuxGravatar kkoniuszy2023-06-011-0/+22
|/ | | | | | | | | | | | Track the private anonymous placeholder mappings created by Unmap() and wherever possible, replace existing placeholders with larger ones instead of creating many small ones. This helps with the buildup of mappings in /proc/YUZU_PID/maps after a longer gaming session, improving stability without having to increase vm.max_map_count to a ridiculous value. The amount of placeholder mappings will no longer outgrow the amount of actual memfd mappings in cases of high memory fragmentation.
* general: fix spelling mistakesGravatar Liam2023-03-121-2/+2
|
* host_memory: Use transparent huge pages where availableGravatar Merry2023-01-011-0/+15
|
* host_memory: Allocate virtual_base with MAP_NORESERVEGravatar Merry2023-01-011-2/+2
| | | | | Specify that we do not require swap to be reserved for this address range; allow overcommitting.
* Initial ARM64 supportGravatar Liam2022-11-091-0/+6
|
* general: Convert source file copyright comments over to SPDXGravatar Morph2022-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.
* common: Replace lock_guard with scoped_lockGravatar Merry2022-04-071-2/+2
|
* general: Fix clang/gcc build errorsGravatar ameerj2022-03-201-0/+1
|
* common: Reduce unused includesGravatar ameerj2022-03-191-1/+0
|
* host_memory: Fix fastmem crashes in debug buildsGravatar Morph2022-03-021-2/+2
| | | | | | It is possible for virtual_offset to not be 0 when the iterator is at the beginning, and thus, std::prev(it) may be evaluated, leading to a crash in debug mode. Co-Authored-By: Fernando S. <1731197+FernandoS27@users.noreply.github.com>
* general: Add missing copyright noticesGravatar ameerj2021-12-051-0/+4
|
* Fixed invalid iterator usageGravatar Andrew Strelsky2021-09-291-1/+1
|
* host_memory: Add workaround for FreeBSD 12Gravatar Jan Beich2021-07-271-0/+5
| | | | | | | src/common/host_memory.cpp:360:14: error: use of undeclared identifier 'memfd_create' fd = memfd_create("HostMemory", 0); ^
* host_memory: Enable Linux implementation on FreeBSDGravatar Jan Beich2021-07-271-2/+2
| | | | HW.Memory <Critical> common/host_memory.cpp:HostMemory:492: Fastmem unavailable, falling back to VirtualBuffer for memory allocation
* host_memory: Correct MEM_RESERVE_PLACEHOLDERGravatar lat9nq2021-06-191-1/+1
| | | | | Microsoft defines `MEM_RESERVE_PLACEHOLDER` as `0x00040000`, but our manually imported version of it drops the last zero.
* common/host_memory: Implement a fallback if fastmem fails.Gravatar Markus Wick2021-06-111-14/+45
| | | | | | This falls back to the old approach of using a virtual buffer. Windows is untested, but this build should fix support for Windows < 10 v1803. However without fastmem support at all.
* common/host_shader: Load Windows 10 functions dynamicallyGravatar ReinUsesLisp2021-06-111-29/+88
| | | | Workaround old headers and libraries shipped on MinGW.
* host_memory: Support staged VirtualProtect callsGravatar ReinUsesLisp2021-06-111-3/+12
|
* common/host_memory: Optimize for huge tables.Gravatar Markus Wick2021-06-111-10/+19
| | | | | In theory, if we have 2 MB continously mapped, this should save one layer of TLB. Let's make it at least more likely by aligning the memory.
* common/host_memory: Add Linux implementationGravatar Markus Wick2021-06-111-10/+120
|
* common/host_memory: Add interface and Windows implementationGravatar ReinUsesLisp2021-06-111-0/+320