Source-Changes-HG archive

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

[src/netbsd-1-4]: src/sys/ufs/lfs Pull up revision 1.25 (requested by perseant):



details:   https://anonhg.NetBSD.org/src/rev/a9f5114f25af
branches:  netbsd-1-4
changeset: 470051:a9f5114f25af
user:      he <he%NetBSD.org@localhost>
date:      Sat Jan 15 17:50:44 2000 +0000

description:
Pull up revision 1.25 (requested by perseant):
  Address problems related to using an LFS filesystem as the root
  filesystem, including mknod hangs.  Fixes PR#8172 and PR#9072.

diffstat:

 sys/ufs/lfs/lfs_alloc.c |  11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diffs (37 lines):

diff -r 3bf3591de484 -r a9f5114f25af sys/ufs/lfs/lfs_alloc.c
--- a/sys/ufs/lfs/lfs_alloc.c   Sat Jan 15 17:45:59 2000 +0000
+++ b/sys/ufs/lfs/lfs_alloc.c   Sat Jan 15 17:50:44 2000 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: lfs_alloc.c,v 1.18.2.5 1999/12/17 23:53:41 he Exp $    */
+/*     $NetBSD: lfs_alloc.c,v 1.18.2.6 2000/01/15 17:50:44 he Exp $    */
 
 /*-
  * Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -150,7 +150,12 @@
        if (ifp->if_daddr != LFS_UNUSED_DADDR)
                panic("lfs_ialloc: inuse inode %d on the free list", new_ino);
        fs->lfs_free = ifp->if_nextfree;
+#ifdef LFS_DEBUG_NEXTFREE
+       ifp->if_nextfree = 0;
+       VOP_BWRITE(bp);
+#else
        brelse(bp);
+#endif
        
        /* Extend IFILE so that the next lfs_valloc will succeed. */
        if (fs->lfs_free == LFS_UNUSED_INUM) {
@@ -321,13 +326,11 @@
        
        if (ip->i_flag & IN_CLEANING) {
                --fs->lfs_uinodes;
-               ip->i_flag &= ~IN_CLEANING;
        }
        if (ip->i_flag & IN_MODIFIED) {
                --fs->lfs_uinodes;
-               ip->i_flag &=
-                       ~(IN_ACCESS | IN_CHANGE | IN_MODIFIED | IN_UPDATE);
        }
+       ip->i_flag &= ~(IN_CLEANING | IN_ACCESS | IN_CHANGE | IN_MODIFIED | IN_UPDATE);
 #ifdef DEBUG_LFS       
        if((int32_t)fs->lfs_uinodes<0) {
                printf("U1");



Home | Main Index | Thread Index | Old Index