From owner-svn-src-user@FreeBSD.ORG Fri Jun 8 18:11:22 2012 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 934A2106567F; Fri, 8 Jun 2012 18:11:22 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 7F6328FC20; Fri, 8 Jun 2012 18:11:22 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q58IBMY0075141; Fri, 8 Jun 2012 18:11:22 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q58IBMeb075139; Fri, 8 Jun 2012 18:11:22 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201206081811.q58IBMeb075139@svn.freebsd.org> From: Attilio Rao Date: Fri, 8 Jun 2012 18:11:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r236761 - user/attilio/vmc-playground/sys/vm X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jun 2012 18:11:22 -0000 Author: attilio Date: Fri Jun 8 18:11:21 2012 New Revision: 236761 URL: http://svn.freebsd.org/changeset/base/236761 Log: Revert r234033, 234007. The target of this is getting at the point where the recovery path is completely removed as we could count on pre-allocation once the path compressed trie is implemented. Modified: user/attilio/vmc-playground/sys/vm/device_pager.c Modified: user/attilio/vmc-playground/sys/vm/device_pager.c ============================================================================== --- user/attilio/vmc-playground/sys/vm/device_pager.c Fri Jun 8 18:08:31 2012 (r236760) +++ user/attilio/vmc-playground/sys/vm/device_pager.c Fri Jun 8 18:11:21 2012 (r236761) @@ -52,8 +52,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include - static void dev_pager_init(void); static vm_object_t dev_pager_alloc(void *, vm_ooffset_t, vm_prot_t, vm_ooffset_t, struct ucred *); @@ -298,7 +296,7 @@ old_dev_pager_fault(vm_object_t object, struct file *fpop; struct thread *td; vm_memattr_t memattr; - int i, ref, ret; + int ref, ret; pidx = OFF_TO_IDX(offset); memattr = object->memattr; @@ -346,14 +344,14 @@ old_dev_pager_fault(vm_object_t object, */ page = vm_page_getfake(paddr, memattr); VM_OBJECT_LOCK(object); + if (vm_page_insert(page, object, offset) != 0) { + vm_page_putfake(page); + return (VM_PAGER_FAIL); + } vm_page_lock(*mres); vm_page_free(*mres); vm_page_unlock(*mres); *mres = page; - while (vm_page_insert(page, object, pidx) != 0) { - for (i = 0; i < 10000000; i++) - cpu_spinwait(); - } } page->valid = VM_PAGE_BITS_ALL; return (VM_PAGER_OK);