diff options
author | dyson <dyson@FreeBSD.org> | 1998-04-30 05:28:53 +0000 |
---|---|---|
committer | dyson <dyson@FreeBSD.org> | 1998-04-30 05:28:53 +0000 |
commit | 224581813c926aab760e352a5583d1d1876e2ba0 (patch) | |
tree | 90796a5c50ba2667494dd52cccbc698f1f1ab900 /sys/ufs/ffs/ffs_inode.c | |
parent | 4b57027ea0e3c5c9dd5274f4b6777639f241b0e2 (diff) | |
download | FreeBSD-src-224581813c926aab760e352a5583d1d1876e2ba0.zip FreeBSD-src-224581813c926aab760e352a5583d1d1876e2ba0.tar.gz |
Fix an error that I made with an optimization. In the case
of softupdates, we need to do vtruncbuf the old way. Luoqi
caught, found the bug and submitted this fix.
Submitted by: Luoqi Chen <luoqi@chen.ml.org>
Diffstat (limited to 'sys/ufs/ffs/ffs_inode.c')
-rw-r--r-- | sys/ufs/ffs/ffs_inode.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/ufs/ffs/ffs_inode.c b/sys/ufs/ffs/ffs_inode.c index dc3f070..a390f0e 100644 --- a/sys/ufs/ffs/ffs_inode.c +++ b/sys/ufs/ffs/ffs_inode.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ffs_inode.c 8.13 (Berkeley) 4/21/95 - * $Id: ffs_inode.c,v 1.39 1998/03/26 20:53:49 phk Exp $ + * $Id: ffs_inode.c,v 1.40 1998/03/30 09:55:55 phk Exp $ */ #include "opt_quota.h" @@ -212,7 +212,7 @@ ffs_truncate(vp, length, flags, cred, p) (void) chkdq(oip, -oip->i_blocks, NOCRED, 0); #endif softdep_setup_freeblocks(oip, length); - (void) vtruncbuf(ovp, cred, p, length, fs->fs_bsize); + vinvalbuf(ovp, V_SAVE | V_SAVEMETA, cred, p, 0, 0); oip->i_flag |= IN_CHANGE | IN_UPDATE; return (ffs_update(ovp, &tv, &tv, 0)); } |