From owner-svn-src-user@FreeBSD.ORG Wed Dec 7 00:07:57 2011 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A2CA31065672; Wed, 7 Dec 2011 00:07:57 +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 7932E8FC12; Wed, 7 Dec 2011 00:07:57 +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 pB707vQp013859; Wed, 7 Dec 2011 00:07:57 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id pB707v11013856; Wed, 7 Dec 2011 00:07:57 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201112070007.pB707v11013856@svn.freebsd.org> From: Attilio Rao Date: Wed, 7 Dec 2011 00:07:57 +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: r228315 - user/attilio/vmcontention/sys/fs/tmpfs 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: Wed, 07 Dec 2011 00:07:57 -0000 Author: attilio Date: Wed Dec 7 00:07:57 2011 New Revision: 228315 URL: http://svn.freebsd.org/changeset/base/228315 Log: Fix tmpfs to build with vmcontention branch. Modified: user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_fifoops.c user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c Modified: user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_fifoops.c ============================================================================== --- user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_fifoops.c Tue Dec 6 22:57:48 2011 (r228314) +++ user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_fifoops.c Wed Dec 7 00:07:57 2011 (r228315) @@ -39,6 +39,7 @@ #include #include #include +#include #include #include Modified: user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c ============================================================================== --- user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c Tue Dec 6 22:57:48 2011 (r228314) +++ user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c Wed Dec 7 00:07:57 2011 (r228315) @@ -505,11 +505,14 @@ tmpfs_mappedread(vm_object_t vobj, vm_ob offset = addr & PAGE_MASK; tlen = MIN(PAGE_SIZE - offset, len); - if ((vobj == NULL) || - (vobj->resident_page_count == 0 && vobj->cache == NULL)) + if (vobj == NULL) goto nocache; VM_OBJECT_LOCK(vobj); + if (vobj->cached_page_count == 0) { + VM_OBJECT_UNLOCK(vobj); + goto nocache; + } lookupvpg: if (((m = vm_page_lookup(vobj, idx)) != NULL) && vm_page_is_valid(m, offset, tlen)) { @@ -633,13 +636,17 @@ tmpfs_mappedwrite(vm_object_t vobj, vm_o offset = addr & PAGE_MASK; tlen = MIN(PAGE_SIZE - offset, len); - if ((vobj == NULL) || - (vobj->resident_page_count == 0 && vobj->cache == NULL)) { + if (vobj == NULL) { vpg = NULL; goto nocache; } VM_OBJECT_LOCK(vobj); + if (vobj->cached_page_count == 0) { + VM_OBJECT_UNLOCK(vobj); + vpg = NULL; + goto nocache; + } lookupvpg: if (((vpg = vm_page_lookup(vobj, idx)) != NULL) && vm_page_is_valid(vpg, offset, tlen)) { @@ -657,8 +664,6 @@ lookupvpg: VM_OBJECT_UNLOCK(vobj); error = uiomove_fromphys(&vpg, offset, tlen, uio); } else { - if (__predict_false(vobj->cache != NULL)) - vm_page_cache_free(vobj, idx, idx + 1); VM_OBJECT_UNLOCK(vobj); vpg = NULL; }