mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-05 13:20:11 +00:00
A MarkWritten whose fresh collect fails (a no-access or unwatchable resident page inside the 64 KiB block span) took the span out of the write watch without running the unwatch hook, so pending storage-image results over it kept no saved guest bytes and their write-back refused: storing storage image results pending over memory outside the write watch without the guest bytes saved before them is not implemented (#7017, Palworld PPSA23126 among others). The hook now runs over the block span before the blocks leave the watch, as Unwatch and the import fallback do, with the tracker lock released for it like #6308 does for imports. The debt entry drops the failed collect from the unsaved cases. The check makes a collect fail over a no-access arena page and requires the hook to have covered the block; it needs the WindowsMappings protection failure, so it runs in the Windows-only section of the write tracking test.