Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sbin/fsck_ffs Fix pasto in the !ufs2 case (use dp->dp1 and n...



details:   https://anonhg.NetBSD.org/src/rev/de07572db3ba
branches:  trunk
changeset: 791804:de07572db3ba
user:      bouyer <bouyer%NetBSD.org@localhost>
date:      Mon Dec 02 18:46:52 2013 +0000

description:
Fix pasto in the !ufs2 case (use dp->dp1 and not of dp->dp2).
This would be a problem only when allocating a new data block and the
indir block is already allocated, which explains why automated tests didn't
find it.
Problem reported on tech-kern@ and fix tested by manu@.

diffstat:

 sbin/fsck_ffs/inode.c |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (27 lines):

diff -r f912bc2cbe96 -r de07572db3ba sbin/fsck_ffs/inode.c
--- a/sbin/fsck_ffs/inode.c     Mon Dec 02 18:36:10 2013 +0000
+++ b/sbin/fsck_ffs/inode.c     Mon Dec 02 18:46:52 2013 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: inode.c,v 1.69 2013/06/23 22:03:34 dholland Exp $      */
+/*     $NetBSD: inode.c,v 1.70 2013/12/02 18:46:52 bouyer Exp $        */
 
 /*
  * Copyright (c) 1980, 1986, 1993
@@ -34,7 +34,7 @@
 #if 0
 static char sccsid[] = "@(#)inode.c    8.8 (Berkeley) 4/28/95";
 #else
-__RCSID("$NetBSD: inode.c,v 1.69 2013/06/23 22:03:34 dholland Exp $");
+__RCSID("$NetBSD: inode.c,v 1.70 2013/12/02 18:46:52 bouyer Exp $");
 #endif
 #endif /* not lint */
 
@@ -993,7 +993,7 @@
                        dp->dp1.di_ib[ilevel - 1] = iswap32(newblk);
        } else {
                ibp = getdatablk(is_ufs2 ? iswap64(dp->dp2.di_ib[ilevel - 1]) :
-                   iswap32(dp->dp2.di_ib[ilevel - 1]), sblock->fs_bsize);
+                   iswap32(dp->dp1.di_ib[ilevel - 1]), sblock->fs_bsize);
        }
        /* walk indirect blocks up to the data block */
        for (; ilevel >0 ; ilevel--) {



Home | Main Index | Thread Index | Old Index