Skip to content

wrapper: honor CPU BCn staging memory requirements and release failed allocations - #49

Open
butilly wants to merge 2 commits into
wrapper-25from
fix/wheel-world-wrapper-staging-fix
Open

butilly wants to merge 2 commits into
wrapper-25from
fix/wheel-world-wrapper-staging-fix

Conversation

@butilly

@butilly butilly commented Oct 30, 2026

Copy link
Copy Markdown
Collaborator

Wheel World (Wheel World.exe), thread 1565070278357291029, Pixel 11 Pro PowerVR. Latest report: peak game RSS 4223 MB, minimum available 0 MB, CPU BC6H uploads including 4-byte final mips (bc=143 target=122). The 128-record diagnostic cap is not an allocation failure and does not establish the freeze cause. Source review of the observed CPU upload path found allocationSize=upload_size instead of buffer memory requirements, unrestricted memory-type selection, missing noncoherent flush, and leaked partial allocations on failure. Query requirements, select compatible host-visible memory preferring coherent, map/flush the whole allocation, unmap after filling, and unwind failed allocations. Preserve formats, dimensions, command-buffer-owned GPU lifetime, Proton and emulator. Based on prior diagnostic branch to retain prior behavior. Verify freeze outcome, peak game RSS and minimum available memory in the same save; this fixes a proven code defect but is not yet a proven freeze fix. Static diff check passed; CI compilation required.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant