From owner-cvs-all@FreeBSD.ORG Sun Dec 12 20:45:07 2004 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7713516A4CE; Sun, 12 Dec 2004 20:45:07 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 687EC43D62; Sun, 12 Dec 2004 20:45:07 +0000 (GMT) (envelope-from alc@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id iBCKj72f069127; Sun, 12 Dec 2004 20:45:07 GMT (envelope-from alc@repoman.freebsd.org) Received: (from alc@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id iBCKj7sl069126; Sun, 12 Dec 2004 20:45:07 GMT (envelope-from alc) Message-Id: <200412122045.iBCKj7sl069126@repoman.freebsd.org> From: Alan Cox Date: Sun, 12 Dec 2004 20:45:07 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: RELENG_5 Subject: cvs commit: src/sys/vm vm_page.c vm_page.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Dec 2004 20:45:07 -0000 alc 2004-12-12 20:45:07 UTC FreeBSD src repository Modified files: (Branch: RELENG_5) sys/vm vm_page.c vm_page.h Log: MFC vm_page.c's revision 1.294 and vm_page.h's revision 1.134 Introduce VM_ALLOC_NOBUSY, an option to vm_page_alloc() and vm_page_grab() that indicates that the caller does not want a page with its busy flag set. In many places, the global page queues lock is acquired and released just to clear the busy flag on a just allocated page. Both the allocation of the page and the clearing of the busy flag occur while the containing vm object is locked. So, the busy flag might as well never be set. MFC vm_page.c's revision 1.298 This change (1) eliminates the calls to vm_page_busy() that immediately precede a call to vm_page_remove() or functions, such as vm_page_free() and vm_page_rename(), that call it and (2) relaxes the requirement in vm_page_remove() that the vm page's PG_BUSY flag is set. Revision Changes Path 1.290.2.2 +8 -16 src/sys/vm/vm_page.c 1.132.2.1 +1 -0 src/sys/vm/vm_page.h