aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/engines/puller.cpp
diff options
context:
space:
mode:
authorTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-28 04:56:16 -0400
committerTakoroka <137927095+Takoroka@users.noreply.github.com>2026-10-28 04:56:16 -0400
commit2c6d8f03aadb3c9d900909bd4af64bbb18614d6d (patch)
treef7ae707fd278434de8ced86a266d43a6752dc827 /src/video_core/engines/puller.cpp
parent64c91974f4455a63a025149a4ba8e2c46894bdc7 (diff)
nx2: unmap GPU memory the game frees
nx2:gpu 213 (NormalUnmapGpuMemory4K) and 102 (destroy GPU-accessible memory) were no-ops, so Eden kept freed memory mapped for the GPU. Title 4 frees its customization-room memory right after saving and reuses it as ordinary heap; pending GPU->CPU write-backs for the old buffers then landed on the new objects, and two threads crashed on garbage pointers ~5 s later (the post-customization freeze). Unmap the range from every address space (the GMMU unmap drops cached buffers/images and their pending downloads), keep the registry's mapping list in step, re-map 211 requests even at the memory's own address, and drop freed regions from the semaphore mirror table, which every 8 KiB allocation used to fill for good after 32 entries.
Diffstat (limited to 'src/video_core/engines/puller.cpp')
0 files changed, 0 insertions, 0 deletions