summaryrefslogtreecommitdiffstats
path: root/sys/vm/vnode_pager.c
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>1997-05-19 14:36:56 +0000
committerdfr <dfr@FreeBSD.org>1997-05-19 14:36:56 +0000
commitd7e320b30e346cf2c6e56f2137bd257b8f8278e7 (patch)
treeafc51a58d727816c7b373ca2288b232ae4d5dd97 /sys/vm/vnode_pager.c
parent9d3c1b4d788c8e5f07a10319b51b2125f3731f85 (diff)
downloadFreeBSD-src-d7e320b30e346cf2c6e56f2137bd257b8f8278e7.zip
FreeBSD-src-d7e320b30e346cf2c6e56f2137bd257b8f8278e7.tar.gz
Fix a few bugs with NFS and mmap caused by NFS' use of b_validoff
and b_validend. The changes to vfs_bio.c are a bit ugly but hopefully can be tidied up later by a slight redesign. PR: kern/2573, kern/2754, kern/3046 (possibly) Reviewed by: dyson
Diffstat (limited to 'sys/vm/vnode_pager.c')
-rw-r--r--sys/vm/vnode_pager.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c
index e4d7404..d258351 100644
--- a/sys/vm/vnode_pager.c
+++ b/sys/vm/vnode_pager.c
@@ -38,7 +38,7 @@
* SUCH DAMAGE.
*
* from: @(#)vnode_pager.c 7.5 (Berkeley) 4/20/91
- * $Id: vnode_pager.c,v 1.69 1997/02/22 09:48:42 peter Exp $
+ * $Id: vnode_pager.c,v 1.70 1997/03/08 04:33:47 dyson Exp $
*/
/*
@@ -692,7 +692,12 @@ vnode_pager_leaf_getpages(object, m, count, reqpage)
/*
* if ANY DEV_BSIZE blocks are valid on a large filesystem block
* then, the entire page is valid --
+ * XXX no it isn't
*/
+
+ if (m[reqpage]->valid != VM_PAGE_BITS_ALL)
+ m[reqpage]->valid = 0;
+
if (m[reqpage]->valid) {
m[reqpage]->valid = VM_PAGE_BITS_ALL;
for (i = 0; i < count; i++) {
OpenPOWER on IntegriCloud