Source-Changes-HG archive

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

[src/fvdl-softdep]: src/sys/kern Do previous better; add VT_VFS tag check to ...



details:   https://anonhg.NetBSD.org/src/rev/f387a758c6e1
branches:  fvdl-softdep
changeset: 477510:f387a758c6e1
user:      fvdl <fvdl%NetBSD.org@localhost>
date:      Sat Oct 23 14:54:04 1999 +0000

description:
Do previous better; add VT_VFS tag check to DIAGNOSTIC case in insmntqueue.

diffstat:

 sys/kern/vfs_subr.c     |  5 +++--
 sys/kern/vfs_syscalls.c |  6 +++---
 2 files changed, 6 insertions(+), 5 deletions(-)

diffs (41 lines):

diff -r 2a392ff38317 -r f387a758c6e1 sys/kern/vfs_subr.c
--- a/sys/kern/vfs_subr.c       Sat Oct 23 14:09:46 1999 +0000
+++ b/sys/kern/vfs_subr.c       Sat Oct 23 14:54:04 1999 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: vfs_subr.c,v 1.112.4.2 1999/10/21 19:21:29 fvdl Exp $  */
+/*     $NetBSD: vfs_subr.c,v 1.112.4.3 1999/10/23 14:54:04 fvdl Exp $  */
 
 /*-
  * Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
@@ -549,7 +549,8 @@
 #ifdef DIAGNOSTIC
        if ((mp != NULL) &&
            (mp->mnt_flag & MNT_UNMOUNT) &&
-           !(mp->mnt_flag & MNT_SOFTDEP)) {
+           !(mp->mnt_flag & MNT_SOFTDEP) &&
+           vp->v_tag != VT_VFS) {
                panic("insmntque into dying filesystem");
        }
 #endif
diff -r 2a392ff38317 -r f387a758c6e1 sys/kern/vfs_syscalls.c
--- a/sys/kern/vfs_syscalls.c   Sat Oct 23 14:09:46 1999 +0000
+++ b/sys/kern/vfs_syscalls.c   Sat Oct 23 14:54:04 1999 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: vfs_syscalls.c,v 1.147.4.3 1999/10/23 14:09:46 fvdl Exp $      */
+/*     $NetBSD: vfs_syscalls.c,v 1.147.4.4 1999/10/23 14:54:05 fvdl Exp $      */
 
 /*
  * Copyright (c) 1989, 1993
@@ -493,10 +493,10 @@
                error = VFS_UNMOUNT(mp, flags, p);
        simple_lock(&mountlist_slock);
        if (error) {
+               if ((mp->mnt_flag & MNT_RDONLY) == 0 && mp->mnt_syncer == NULL)
+                       (void) vfs_allocate_syncvnode(mp);
                mp->mnt_flag &= ~MNT_UNMOUNT;
                mp->mnt_unmounter = NULL;
-               if ((mp->mnt_flag & MNT_RDONLY) == 0 && mp->mnt_syncer == NULL)
-                       (void) vfs_allocate_syncvnode(mp);
                mp->mnt_flag |= async;
                lockmgr(&mp->mnt_lock, LK_RELEASE | LK_INTERLOCK | LK_REENABLE,
                    &mountlist_slock);



Home | Main Index | Thread Index | Old Index