CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2025/12/03 02:47:44
Modified files:
sys/uvm : uvm_pdaemon.c uvm_aobj.c
Log message:
Let the page daemon recover when uao_set_swslot() returns ENOMEM.
When all available pages have been exhausted it might not be possible for the
aobj layer to allocate a new element for a hash table. In that case simply
skip the page. The page daemon will likely find a page that can be added to
the cluster without requiring any allocation in uao_set_swslot().
Not that this edge case, reported by bluhm@, can be triggered because the
aiodone daemon releases the memory reserved for the page daemon asynchronously.
So there might always be a window where no page are available to write pages
to disk.
Tested by and ok bluhm@