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@
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.