Page MenuHomeFreeBSD

vm_grab: reset iter after alloc failure
ClosedPublic

Authored by dougm on Thu, Apr 10, 6:48 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 17, 1:24 PM
Unknown Object (File)
Mon, Apr 14, 12:31 PM
Unknown Object (File)
Mon, Apr 14, 11:24 AM
Unknown Object (File)
Sun, Apr 13, 4:55 AM
Unknown Object (File)
Sun, Apr 13, 4:55 AM
Unknown Object (File)
Sun, Apr 13, 4:55 AM
Unknown Object (File)
Sun, Apr 13, 4:55 AM
Unknown Object (File)
Sun, Apr 13, 4:55 AM
Subscribers

Details

Summary

After vm_page_grab_lookup fails to find a page, and vm_page_alloc_after fails to allocate one, reset the pages iterator which is invalidated by a release/acquire of the object write lock within the allocation code.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

dougm requested review of this revision.Thu, Apr 10, 6:48 AM
dougm created this revision.
This revision is now accepted and ready to land.Thu, Apr 10, 6:50 AM

Fixes: 7becd87c988c ("vm_grab: use iterator for grab lookup")

This revision was automatically updated to reflect the committed changes.