mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-31 12:35:51 +00:00
- mlock on macOS skipped every page the locked ranges recorded, but a mapping that replaces a locked range in place leaves the record behind without wires, so a later mlock returned 0 and wired nothing. Within a recorded range it now wires again the host regions whose wire count is 0. The mlock test locks, remaps the range fixed and locks again. - munlock and munlockall on macOS hold the locked-range lock across the host unwire and the record update, so a concurrent mlock cannot see a range as wired while it is being unwired. - sceKernelVirtualQuery limits the host region it reports to the write watch run that holds the address, so the permissions it reports hold for the whole extent. - The libc debt entry says what the mapping paths do: they register the range again, and GuestWriteWatchProtectionChanged has no caller yet.