Page MenuHomeFreeBSD

Disallow recursion on the free page queue mutex
ClosedPublic

Authored by alc on Nov 24 2016, 6:56 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 20, 2:35 PM
Unknown Object (File)
Sat, Apr 20, 2:04 PM
Unknown Object (File)
Mar 9 2024, 5:30 PM
Unknown Object (File)
Feb 16 2024, 8:52 AM
Unknown Object (File)
Dec 27 2023, 7:43 PM
Unknown Object (File)
Dec 27 2023, 7:35 PM
Unknown Object (File)
Dec 20 2023, 12:36 AM
Unknown Object (File)
Nov 30 2023, 3:15 PM
Subscribers

Details

Summary

Recursion on the free page queue mutex occurred when UMA needed to allocate a new page of radix trie nodes to complete a vm_radix_insert() operation that was requested by vm_page_cache(). vm_page_cache() already held the free page queue lock when UMA tried to acquire it through its call to vm_page_alloc(). This code path no longer exists, so there is no reason to allow recursion on the free page queue mutex.

Diff Detail

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

Event Timeline

alc retitled this revision from to Disallow recursion on the free page queue mutex.
alc updated this object.
alc edited the test plan for this revision. (Show Details)
alc added reviewers: kib, markj.
markj edited edge metadata.
This revision is now accepted and ready to land.Nov 24 2016, 8:01 PM
kib edited edge metadata.

Peter, could you please test this patch.

In D8628#179071, @alc wrote:

Peter, could you please test this patch.

Sure. I ran a buildworld + all the stress2 tests I have.
No problems seen.

This revision was automatically updated to reflect the committed changes.