CVS: cvs.openbsd.org: src
Mark Kettenis <[email protected]>
| Newsgroups | gmane.os.openbsd.cvs |
|---|---|
| Message-ID | <[email protected]> |
CVSROOT: /cvs Module name: src Changes by: [email protected] 2026/07/07 11:32:56 Modified files: sys/uvm : uvm_pager.c uvm_pager.h uvm_pdaemon.c Log message: Allocate the psegs that are reserved for the pagedeamon only if no other psegs are available. Let the pagedeamon only start a new swap cluster if there are still at least two reserved slots available. This goes a long way towards guaranteeing that we have the resources to actually write out the swap cluster once it is filled. This is important since the code that drops a cluster may need to acquire an rwlock, which means the pagedaemon could sleep. This is undesirable and may even lead to deadlocks. Note that there still is a possibility that we may fail to allocate a buf from the bufpool, which would lead us to the same undesirable path. So far I've not been able to hit that case. ok claudio@