Date: Sat, 9 Mar 2002 08:24:29 -0800 (PST) From: Tor Egge <tegge@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/vm vm_kern.c Message-ID: <200203091624.g29GOTZ84788@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
tegge 2002/03/09 08:24:28 PST
Modified files:
sys/vm vm_kern.c
Log:
Revert change in revision 1.53 and add a small comment to protect
the revived code.
vm pages newly allocated are marked busy (PG_BUSY), thus calling
vm_page_delete before the pages has been freed or unbusied will
cause a deadlock since vm_page_object_page_remove will wait for the
busy flag to be cleared. This can be triggered by calling malloc
with size > PAGE_SIZE and the M_NOWAIT flag on systems low on
physical free memory.
A kernel module that reproduces the problem, written by Logan Gabriel
<logan@mail.2cactus.com>, can be found in the freebsd-hackers mail
archive (12 Apr 2001). The problem was recently noticed again by
Archie Cobbs <archie@dellroad.org>.
Reviewed by: dillon
Revision Changes Path
1.75 +12 -0 src/sys/vm/vm_kern.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200203091624.g29GOTZ84788>
