Page MenuHomeFreeBSD

Handle a race of collapse with a retrying fault.
ClosedPublic

Authored by kib on Jan 23 2020, 11:24 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Mar 19, 2:27 PM
Unknown Object (File)
Wed, Mar 18, 8:41 PM
Unknown Object (File)
Sun, Mar 15, 2:37 PM
Unknown Object (File)
Sat, Mar 14, 12:25 PM
Unknown Object (File)
Mon, Mar 2, 8:18 AM
Unknown Object (File)
Tue, Feb 24, 2:01 AM
Unknown Object (File)
Jan 22 2026, 6:50 AM
Unknown Object (File)
Jan 6 2026, 11:14 PM
Subscribers

Details

Summary

Both vm_object_scan_all_shadowed() and vm_object_collapse_scan() might observe an invalid page left in the default backing object by the fault handler that retried. Check for the condition and refuse to collapse.

Reported by: pho

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

The goto is unfortunate but I see that without the loop becomes even weirder

This revision is now accepted and ready to land.Jan 24 2020, 1:52 AM

I completed a full stress2 test and ran the original problem test for 3 hours.
LGTM.

This revision was automatically updated to reflect the committed changes.