Page MenuHomeFreeBSD

vm_grab: reset iter after alloc failure
ClosedPublic

Authored by dougm on Apr 10 2025, 6:48 AM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Mar 30, 5:33 AM
Unknown Object (File)
Sat, Mar 28, 3:07 PM
Unknown Object (File)
Fri, Mar 27, 5:30 PM
Unknown Object (File)
Thu, Mar 26, 11:53 PM
Unknown Object (File)
Sun, Mar 22, 10:45 AM
Unknown Object (File)
Fri, Mar 20, 3:31 AM
Unknown Object (File)
Thu, Mar 19, 5:52 AM
Unknown Object (File)
Wed, Mar 18, 5:46 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.Apr 10 2025, 6:48 AM
dougm created this revision.
This revision is now accepted and ready to land.Apr 10 2025, 6:50 AM

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

This revision was automatically updated to reflect the committed changes.