From owner-cvs-all@FreeBSD.ORG Thu Sep 27 04:22:04 2007 Return-Path: Delivered-To: cvs-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F21A716A476; Thu, 27 Sep 2007 04:22:03 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 169E613C4CA; Thu, 27 Sep 2007 04:22:00 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id l8R4M0pi042380; Thu, 27 Sep 2007 04:22:00 GMT (envelope-from alc@repoman.freebsd.org) Received: (from alc@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id l8R4M0Cv042375; Thu, 27 Sep 2007 04:22:00 GMT (envelope-from alc) Message-Id: <200709270422.l8R4M0Cv042375@repoman.freebsd.org> From: Alan Cox Date: Thu, 27 Sep 2007 04:22:00 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/vm vm_object.c vm_page.c vm_page.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 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: Thu, 27 Sep 2007 04:22:04 -0000 alc 2007-09-27 04:22:00 UTC FreeBSD src repository Modified files: sys/vm vm_object.c vm_page.c vm_page.h Log: Correct an error of omission in the reimplementation of the page cache: vm_object_page_remove() should convert any cached pages that fall with the specified range to free pages. Otherwise, there could be a problem if a file is first truncated and then regrown. Specifically, some old data from prior to the truncation might reappear. Generalize vm_page_cache_free() to support the conversion of either a subset or the entirety of an object's cached pages. Reported by: tegge Reviewed by: tegge Approved by: re (kensmith) Revision Changes Path 1.385 +4 -2 src/sys/vm/vm_object.c 1.355 +43 -15 src/sys/vm/vm_page.c 1.152 +1 -1 src/sys/vm/vm_page.h