HomeFreeBSD

During vm_page_cache()'s call to vm_radix_insert(), if vm_page_alloc() was

Description

During vm_page_cache()'s call to vm_radix_insert(), if vm_page_alloc() was
called to allocate a new page of radix trie nodes, there could be a call to
vm_radix_remove() on the same trie (of PG_CACHED pages) as the in-progress
vm_radix_insert(). With the removal of PG_CACHED pages, we can simplify
vm_radix_insert() and vm_radix_remove() by removing the flags on the root of
the trie that were used to detect this case and the code for restarting
vm_radix_insert() when it happened.

Reviewed by: kib, markj
Tested by: pho
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D8664

Details

Provenance
alcAuthored on
Reviewer
kib
Differential Revision
D8664: Simplify vm_radix_insert()
Parents
rS309364: locale: fix buffer management
Branches
Unknown
Tags
Unknown