summaryrefslogtreecommitdiffstats
path: root/sys/ufs
diff options
context:
space:
mode:
authordyson <dyson@FreeBSD.org>1995-09-07 04:39:09 +0000
committerdyson <dyson@FreeBSD.org>1995-09-07 04:39:09 +0000
commit2b3cebdb88b9a6c35c31ef6c5c8741c4cd420310 (patch)
treecfaaf36db22313bbd3982f7fecc15bcadbbb1bc6 /sys/ufs
parente1f54b721e169df188dd7940fe5e17eceee44111 (diff)
downloadFreeBSD-src-2b3cebdb88b9a6c35c31ef6c5c8741c4cd420310.zip
FreeBSD-src-2b3cebdb88b9a6c35c31ef6c5c8741c4cd420310.tar.gz
Correct a case in the ffs_getpages where a page is not found in
a sparse file and the page is zeroed but not set valid, clean.
Diffstat (limited to 'sys/ufs')
-rw-r--r--sys/ufs/ufs/ufs_readwrite.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/ufs/ufs/ufs_readwrite.c b/sys/ufs/ufs/ufs_readwrite.c
index 5bfec70..08facc9 100644
--- a/sys/ufs/ufs/ufs_readwrite.c
+++ b/sys/ufs/ufs/ufs_readwrite.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ufs_readwrite.c 8.7 (Berkeley) 1/21/94
- * $Id: ufs_readwrite.c,v 1.10 1995/08/25 19:40:32 bde Exp $
+ * $Id: ufs_readwrite.c,v 1.11 1995/09/06 05:39:28 dyson Exp $
*/
#ifdef LFS_READWRITE
@@ -370,6 +370,8 @@ ffs_getpages(ap)
if (reqblkno == -1) {
if ((ap->a_m[ap->a_reqpage]->flags & PG_ZERO) == 0)
vm_page_zero_fill(ap->a_m[ap->a_reqpage]);
+ ap->a_m[ap->a_reqpage]->dirty = 0;
+ ap->a_m[ap->a_reqpage]->valid = VM_PAGE_BITS_ALL;
return VM_PAGER_OK;
} else {
return VM_PAGER_ERROR;
OpenPOWER on IntegriCloud