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
F170901845: D23331.diff
Mon, Sep 7, 11:07 AM
Unknown Object (File)
Fri, Sep 4, 9:24 PM
Unknown Object (File)
Fri, Sep 4, 3:43 PM
Unknown Object (File)
Thu, Sep 3, 4:25 PM
Unknown Object (File)
Thu, Sep 3, 1:51 AM
Unknown Object (File)
Wed, Sep 2, 8:00 AM
Unknown Object (File)
Wed, Sep 2, 5:14 AM
Unknown Object (File)
Tue, Sep 1, 11:17 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.