sharpemu/tests/SharpEmu.Libs.Tests/Memory
Slick Daddy 33be88bdf9
memory: back the free pages of a partially-overlapping fixed mapping (#458)
A SCE_KERNEL_MAP_FIXED request whose window partially overlaps an
existing allocation was failing outright: AllocateAt reserves the whole
range in one all-or-nothing VirtualAlloc, which returns 0 on partial
overlap. The mapping call then returned NOT_FOUND while leaving the free
tail unmapped, so the guest faulted (0xC0000005) writing into it.

Add IGuestAddressSpace.TryBackFixedRange, which walks the range via the
host Query (VirtualQuery reports contiguous same-state runs) and fills
only the free sub-ranges, leaving already-backed pages untouched. This
matches the fixed-mapping contract on hardware. Route the fixed
reservation path through it via a new backPartialOverlap flag.

Co-authored-by: slick-daddy <slick-daddy@users.noreply.github.com>
2026-07-20 09:08:29 +03:00
..
GuestImageWriteTrackerTests.cs Refresh CPU-rewritten guest textures by write generation (#447) 2026-07-20 01:29:30 +03:00
GuestMemoryAllocatorTests.cs memory: back the free pages of a partially-overlapping fixed mapping (#458) 2026-07-20 09:08:29 +03:00
PhysicalVirtualMemoryTests.cs Fixes a Mutex Issue Preventing Some UE Titles From Booting (#451) 2026-07-19 13:20:05 -06:00
PosixHostMemoryTests.cs Fix macOS fixed-address allocation collisions (#246) 2026-07-16 16:45:08 +03:00
VirtualMemoryTests.cs [Tests] Add VirtualMemory and PhysicalVirtualMemory edge case tests (#266) 2026-07-17 03:13:38 +03:00