Subject: CVS commit: src/sys/uvm
To: None <source-changes@NetBSD.org>
From: YAMAMOTO Takashi <yamt@netbsd.org>
List: source-changes
Date: 05/05/2004 11:54:32
Module Name:	src
Committed By:	yamt
Date:		Wed May  5 11:54:32 UTC 2004

Modified Files:
	src/sys/uvm: uvm_anon.c uvm_anon.h uvm_fault.c uvm_pager.c

Log Message:
fix a amap_wirerange deadlock problem by re-introducing
PG_RELEASED for anon pages.  PR/23171 from Christian Limpach.
for details, see discussion filed in the PR database.

uvm_anon_release: a new function to free anon-owned PG_RELEASED page.
uvm_anfree: we can't wait for the page here because the caller might hold
	amap lock.  instead, just mark the page as PG_RELEASED.
	who unbusy the page should check the PG_RELEASED.
uvm_aio_aiodone: uvm_anon_release() instead of uvm_page_unbusy()
	if appropriate.
uvmfault_anonget: check PG_RELEASED.


To generate a diff of this commit:
cvs rdiff -r1.28 -r1.29 src/sys/uvm/uvm_anon.c
cvs rdiff -r1.16 -r1.17 src/sys/uvm/uvm_anon.h
cvs rdiff -r1.87 -r1.88 src/sys/uvm/uvm_fault.c
cvs rdiff -r1.62 -r1.63 src/sys/uvm/uvm_pager.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.