From ba2871b74cf55bf786346e67ab056ffd87c7eeb1 Mon Sep 17 00:00:00 2001 From: Matthew Dillon Date: Tue, 19 Jan 1999 08:00:51 +0000 Subject: Obtained from: Luoqi Fix NFS file corruption problem introduced in 1.188. The valid range was not being set properly, causing a later reference to the buffer to clear the B_CACHE bit. --- sys/kern/vfs_bio.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index ee7ad1121124..30018b544f53 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -11,7 +11,7 @@ * 2. Absolutely no warranty of function or purpose is made by the author * John S. Dyson. * - * $Id: vfs_bio.c,v 1.191 1999/01/10 01:58:25 eivind Exp $ + * $Id: vfs_bio.c,v 1.192 1999/01/12 11:59:34 eivind Exp $ */ /* @@ -2171,7 +2171,8 @@ vfs_page_set_valid(struct buf *bp, vm_ooffset_t off, int pageno, vm_page_t m) (vm_offset_t) (soff & PAGE_MASK), (vm_offset_t) (eoff - soff)); sv = (bp->b_offset + bp->b_validoff + DEV_BSIZE - 1) & ~(DEV_BSIZE - 1); - ev = (bp->b_offset + bp->b_validend) & ~(DEV_BSIZE - 1); + ev = (bp->b_offset + bp->b_validend + (DEV_BSIZE - 1)) & + ~(DEV_BSIZE - 1); soff = qmax(sv, soff); eoff = qmin(ev, eoff); } -- cgit v1.3