update reference counts on vnodes using VREF
authorKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Wed, 28 Jun 1989 10:28:17 +0000 (02:28 -0800)
committerKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Wed, 28 Jun 1989 10:28:17 +0000 (02:28 -0800)
SCCS-vsn: sys/kern/vfs_bio.c 7.7
SCCS-vsn: sys/kern/vfs_cluster.c 7.7
SCCS-vsn: sys/ufs/ffs/ffs_inode.c 7.9
SCCS-vsn: sys/ufs/ffs/ufs_inode.c 7.9
SCCS-vsn: sys/ufs/lfs/lfs_inode.c 7.9
SCCS-vsn: sys/ufs/ufs/ufs_inode.c 7.9
SCCS-vsn: sys/ufs/ffs/ufs_lookup.c 7.11
SCCS-vsn: sys/ufs/ufs/ufs_lookup.c 7.11
SCCS-vsn: sys/ufs/ffs/ffs_vfsops.c 7.16
SCCS-vsn: sys/ufs/ffs/ufs_vfsops.c 7.16
SCCS-vsn: sys/ufs/lfs/lfs_vfsops.c 7.16
SCCS-vsn: sys/ufs/ufs/ufs_vfsops.c 7.16
SCCS-vsn: sys/kern/init_main.c 7.14
SCCS-vsn: sys/kern/kern_fork.c 7.7
SCCS-vsn: sys/kern/vfs_lookup.c 7.14
SCCS-vsn: sys/kern/vfs_subr.c 7.5
SCCS-vsn: sys/vm/vm_swap.c 7.6
SCCS-vsn: sys/kern/kern_physio.c 7.7

18 files changed:
usr/src/sys/kern/init_main.c
usr/src/sys/kern/kern_fork.c
usr/src/sys/kern/kern_physio.c
usr/src/sys/kern/vfs_bio.c
usr/src/sys/kern/vfs_cluster.c
usr/src/sys/kern/vfs_lookup.c
usr/src/sys/kern/vfs_subr.c
usr/src/sys/ufs/ffs/ffs_inode.c
usr/src/sys/ufs/ffs/ffs_vfsops.c
usr/src/sys/ufs/ffs/ufs_inode.c
usr/src/sys/ufs/ffs/ufs_lookup.c
usr/src/sys/ufs/ffs/ufs_vfsops.c
usr/src/sys/ufs/lfs/lfs_inode.c
usr/src/sys/ufs/lfs/lfs_vfsops.c
usr/src/sys/ufs/ufs/ufs_inode.c
usr/src/sys/ufs/ufs/ufs_lookup.c
usr/src/sys/ufs/ufs/ufs_vfsops.c
usr/src/sys/vm/vm_swap.c

index 5ec3b0c..888cad7 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)init_main.c 7.13 (Berkeley) %G%
+ *     @(#)init_main.c 7.14 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -192,7 +192,7 @@ main(firstaddr)
        if (VFS_ROOT(rootfs, &rootdir))
                panic("cannot find root vnode");
        u.u_cdir = rootdir;
        if (VFS_ROOT(rootfs, &rootdir))
                panic("cannot find root vnode");
        u.u_cdir = rootdir;
-       u.u_cdir->v_count++;
+       VREF(u.u_cdir);
        VOP_UNLOCK(rootdir);
        u.u_rdir = NULL;
        boottime = time;
        VOP_UNLOCK(rootdir);
        u.u_rdir = NULL;
        boottime = time;
index d1bf0d0..e4f8f9e 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)kern_fork.c 7.6 (Berkeley) %G%
+ *     @(#)kern_fork.c 7.7 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -252,9 +252,9 @@ again:
                        continue;
                fp->f_count++;
        }
                        continue;
                fp->f_count++;
        }
-       u.u_cdir->v_count++;
+       VREF(u.u_cdir);
        if (u.u_rdir)
        if (u.u_rdir)
-               u.u_rdir->v_count++;
+               VREF(u.u_rdir);
        crhold(u.u_cred);
 
        /*
        crhold(u.u_cred);
 
        /*
index bd733f9..bcf39d8 100644 (file)
@@ -3,7 +3,7 @@
  * All rights reserved.  The Berkeley software License Agreement
  * specifies the terms and conditions for redistribution.
  *
  * All rights reserved.  The Berkeley software License Agreement
  * specifies the terms and conditions for redistribution.
  *
- *     @(#)kern_physio.c       7.6 (Berkeley) %G%
+ *     @(#)kern_physio.c       7.7 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -95,7 +95,7 @@ swap(p, dblkno, addr, nbytes, rdflg, flag, vp, pfcent)
                bp->b_dev = vp->v_rdev;
                if (bp->b_vp)
                        brelvp(bp);
                bp->b_dev = vp->v_rdev;
                if (bp->b_vp)
                        brelvp(bp);
-               vp->v_count++;
+               VREF(vp);
                bp->b_vp = vp;
                bp->b_bcount = nbytes;
                minphys(bp);
                bp->b_vp = vp;
                bp->b_bcount = nbytes;
                minphys(bp);
index c30c1a0..db866e8 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)vfs_bio.c   7.6 (Berkeley) %G%
+ *     @(#)vfs_bio.c   7.7 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -380,7 +380,7 @@ loop:
        bremhash(bp);
        if (bp->b_vp)
                brelvp(bp);
        bremhash(bp);
        if (bp->b_vp)
                brelvp(bp);
-       vp->v_count++;
+       VREF(vp);
        bp->b_vp = vp;
        bp->b_dev = vp->v_rdev;
 #ifdef SECSIZE
        bp->b_vp = vp;
        bp->b_dev = vp->v_rdev;
 #ifdef SECSIZE
index 1549d8c..0f4ac18 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)vfs_cluster.c       7.6 (Berkeley) %G%
+ *     @(#)vfs_cluster.c       7.7 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -380,7 +380,7 @@ loop:
        bremhash(bp);
        if (bp->b_vp)
                brelvp(bp);
        bremhash(bp);
        if (bp->b_vp)
                brelvp(bp);
-       vp->v_count++;
+       VREF(vp);
        bp->b_vp = vp;
        bp->b_dev = vp->v_rdev;
 #ifdef SECSIZE
        bp->b_vp = vp;
        bp->b_dev = vp->v_rdev;
 #ifdef SECSIZE
index 866fad6..c0bd27b 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)vfs_lookup.c        7.13 (Berkeley) %G%
+ *     @(#)vfs_lookup.c        7.14 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -110,7 +110,7 @@ namei(ndp)
        ndp->ni_ptr = ndp->ni_pnbuf;
        ndp->ni_loopcnt = 0;
        dp = ndp->ni_cdir;
        ndp->ni_ptr = ndp->ni_pnbuf;
        ndp->ni_loopcnt = 0;
        dp = ndp->ni_cdir;
-       dp->v_count++;
+       VREF(dp);
 #ifdef KTRACE
        if (KTRPOINT(u.u_procp, KTR_NAMEI))
                ktrnamei(u.u_procp->p_tracep, ndp->ni_pnbuf);
 #ifdef KTRACE
        if (KTRPOINT(u.u_procp, KTR_NAMEI))
                ktrnamei(u.u_procp->p_tracep, ndp->ni_pnbuf);
@@ -129,7 +129,7 @@ start:
                }
                if ((dp = ndp->ni_rdir) == NULL)
                        dp = rootdir;
                }
                if ((dp = ndp->ni_rdir) == NULL)
                        dp = rootdir;
-               dp->v_count++;
+               VREF(dp);
        }
        VOP_LOCK(dp);
        ndp->ni_endoff = 0;
        }
        VOP_LOCK(dp);
        ndp->ni_endoff = 0;
@@ -229,7 +229,7 @@ dirloop:
                for (;;) {
                        if (dp == ndp->ni_rdir || dp == rootdir) {
                                ndp->ni_dvp = dp;
                for (;;) {
                        if (dp == ndp->ni_rdir || dp == rootdir) {
                                ndp->ni_dvp = dp;
-                               dp->v_count++;
+                               VREF(dp);
                                goto nextname;
                        }
                        if ((dp->v_flag & VROOT) == 0)
                                goto nextname;
                        }
                        if ((dp->v_flag & VROOT) == 0)
@@ -238,7 +238,7 @@ dirloop:
                        dp = dp->v_mount->m_vnodecovered;
                        vput(tdp);
                        VOP_LOCK(dp);
                        dp = dp->v_mount->m_vnodecovered;
                        vput(tdp);
                        VOP_LOCK(dp);
-                       dp->v_count++;
+                       VREF(dp);
                }
        }
 
                }
        }
 
index 694615e..56bcf93 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)vfs_subr.c  7.4 (Berkeley) %G%
+ *     @(#)vfs_subr.c  7.5 (Berkeley) %G%
  */
 
 /*
  */
 
 /*
@@ -190,10 +190,10 @@ nddup(ndp, newndp)
 
        ndinit(newndp);
        newndp->ni_cdir = ndp->ni_cdir;
 
        ndinit(newndp);
        newndp->ni_cdir = ndp->ni_cdir;
-       newndp->ni_cdir->v_count++;
+       VREF(newndp->ni_cdir);
        newndp->ni_rdir = ndp->ni_rdir;
        if (newndp->ni_rdir)
        newndp->ni_rdir = ndp->ni_rdir;
        if (newndp->ni_rdir)
-               newndp->ni_rdir->v_count++;
+               VREF(newndp->ni_rdir);
        newndp->ni_cred = ndp->ni_cred;
        crhold(newndp->ni_cred);
 }
        newndp->ni_cred = ndp->ni_cred;
        crhold(newndp->ni_cred);
 }
index ca46a5f..6f43ca3 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ffs_inode.c 7.8 (Berkeley) %G%
+ *     @(#)ffs_inode.c 7.9 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -145,7 +145,7 @@ loop:
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
-                       vp->v_count++;
+                       VREF(vp);
                        *ipp = ip;
                        return(0);
                }
                        *ipp = ip;
                        return(0);
                }
@@ -246,7 +246,7 @@ again:
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
-       ip->i_devvp->v_count++;
+       VREF(ip->i_devvp);
        /*
         * Initialize the associated vnode
         */
        /*
         * Initialize the associated vnode
         */
@@ -385,7 +385,7 @@ igrab(ip)
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
-       vp->v_count++;
+       VREF(vp);
        ILOCK(ip);
 }
 
        ILOCK(ip);
 }
 
index c9b2acf..bf3ac3a 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ffs_vfsops.c        7.15 (Berkeley) %G%
+ *     @(#)ffs_vfsops.c        7.16 (Berkeley) %G%
  */
 
 
  */
 
 
@@ -427,7 +427,7 @@ ufs_sync(mp, waitfor)
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
-               ITOV(ip)->v_count++;
+               VREF(ITOV(ip));
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
index 41ca33a..b77f1b8 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ufs_inode.c 7.8 (Berkeley) %G%
+ *     @(#)ufs_inode.c 7.9 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -145,7 +145,7 @@ loop:
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
-                       vp->v_count++;
+                       VREF(vp);
                        *ipp = ip;
                        return(0);
                }
                        *ipp = ip;
                        return(0);
                }
@@ -246,7 +246,7 @@ again:
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
-       ip->i_devvp->v_count++;
+       VREF(ip->i_devvp);
        /*
         * Initialize the associated vnode
         */
        /*
         * Initialize the associated vnode
         */
@@ -385,7 +385,7 @@ igrab(ip)
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
-       vp->v_count++;
+       VREF(vp);
        ILOCK(ip);
 }
 
        ILOCK(ip);
 }
 
index 7438f9e..d298a9d 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ufs_lookup.c        7.10 (Berkeley) %G%
+ *     @(#)ufs_lookup.c        7.11 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -122,7 +122,7 @@ ufs_lookup(vp, ndp)
                pdp = dp;
                dp = VTOI(vdp);
                if (pdp == dp) {
                pdp = dp;
                dp = VTOI(vdp);
                if (pdp == dp) {
-                       vdp->v_count++;
+                       VREF(vdp);
                } else if (ndp->ni_isdotdot) {
                        IUNLOCK(pdp);
                        igrab(dp);
                } else if (ndp->ni_isdotdot) {
                        IUNLOCK(pdp);
                        igrab(dp);
@@ -379,7 +379,7 @@ found:
                        ndp->ni_count = ndp->ni_offset - prevoff;
                vdp = ITOV(dp);
                if (dp->i_number == ndp->ni_dent.d_ino) {
                        ndp->ni_count = ndp->ni_offset - prevoff;
                vdp = ITOV(dp);
                if (dp->i_number == ndp->ni_dent.d_ino) {
-                       vdp->v_count++;
+                       VREF(vdp);
                } else {
                        pdp = dp;
                        if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
                } else {
                        pdp = dp;
                        if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
@@ -459,7 +459,7 @@ found:
                ndp->ni_vp = ITOV(tdp);
        } else if (dp->i_number == ndp->ni_dent.d_ino) {
                vdp = ITOV(dp);
                ndp->ni_vp = ITOV(tdp);
        } else if (dp->i_number == ndp->ni_dent.d_ino) {
                vdp = ITOV(dp);
-               vdp->v_count++; /* we want ourself, ie "." */
+               VREF(vdp);      /* we want ourself, ie "." */
                ndp->ni_vp = vdp;
        } else {
                if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
                ndp->ni_vp = vdp;
        } else {
                if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
index e818e9d..f2d7934 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ufs_vfsops.c        7.15 (Berkeley) %G%
+ *     @(#)ufs_vfsops.c        7.16 (Berkeley) %G%
  */
 
 
  */
 
 
@@ -427,7 +427,7 @@ ufs_sync(mp, waitfor)
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
-               ITOV(ip)->v_count++;
+               VREF(ITOV(ip));
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
index 549071c..042da5d 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)lfs_inode.c 7.8 (Berkeley) %G%
+ *     @(#)lfs_inode.c 7.9 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -145,7 +145,7 @@ loop:
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
-                       vp->v_count++;
+                       VREF(vp);
                        *ipp = ip;
                        return(0);
                }
                        *ipp = ip;
                        return(0);
                }
@@ -246,7 +246,7 @@ again:
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
-       ip->i_devvp->v_count++;
+       VREF(ip->i_devvp);
        /*
         * Initialize the associated vnode
         */
        /*
         * Initialize the associated vnode
         */
@@ -385,7 +385,7 @@ igrab(ip)
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
-       vp->v_count++;
+       VREF(vp);
        ILOCK(ip);
 }
 
        ILOCK(ip);
 }
 
index bdc0096..8e23859 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)lfs_vfsops.c        7.15 (Berkeley) %G%
+ *     @(#)lfs_vfsops.c        7.16 (Berkeley) %G%
  */
 
 
  */
 
 
@@ -427,7 +427,7 @@ ufs_sync(mp, waitfor)
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
-               ITOV(ip)->v_count++;
+               VREF(ITOV(ip));
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
index 41ca33a..b77f1b8 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ufs_inode.c 7.8 (Berkeley) %G%
+ *     @(#)ufs_inode.c 7.9 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -145,7 +145,7 @@ loop:
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
                                ip->i_freeb = NULL;
                        }
                        ILOCK(ip);
-                       vp->v_count++;
+                       VREF(vp);
                        *ipp = ip;
                        return(0);
                }
                        *ipp = ip;
                        return(0);
                }
@@ -246,7 +246,7 @@ again:
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
         */
        ip->i_fs = fs;
        ip->i_devvp = VFSTOUFS(mntp)->um_devvp;
-       ip->i_devvp->v_count++;
+       VREF(ip->i_devvp);
        /*
         * Initialize the associated vnode
         */
        /*
         * Initialize the associated vnode
         */
@@ -385,7 +385,7 @@ igrab(ip)
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
                ip->i_freef = NULL;
                ip->i_freeb = NULL;
        }
-       vp->v_count++;
+       VREF(vp);
        ILOCK(ip);
 }
 
        ILOCK(ip);
 }
 
index 7438f9e..d298a9d 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ufs_lookup.c        7.10 (Berkeley) %G%
+ *     @(#)ufs_lookup.c        7.11 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -122,7 +122,7 @@ ufs_lookup(vp, ndp)
                pdp = dp;
                dp = VTOI(vdp);
                if (pdp == dp) {
                pdp = dp;
                dp = VTOI(vdp);
                if (pdp == dp) {
-                       vdp->v_count++;
+                       VREF(vdp);
                } else if (ndp->ni_isdotdot) {
                        IUNLOCK(pdp);
                        igrab(dp);
                } else if (ndp->ni_isdotdot) {
                        IUNLOCK(pdp);
                        igrab(dp);
@@ -379,7 +379,7 @@ found:
                        ndp->ni_count = ndp->ni_offset - prevoff;
                vdp = ITOV(dp);
                if (dp->i_number == ndp->ni_dent.d_ino) {
                        ndp->ni_count = ndp->ni_offset - prevoff;
                vdp = ITOV(dp);
                if (dp->i_number == ndp->ni_dent.d_ino) {
-                       vdp->v_count++;
+                       VREF(vdp);
                } else {
                        pdp = dp;
                        if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
                } else {
                        pdp = dp;
                        if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
@@ -459,7 +459,7 @@ found:
                ndp->ni_vp = ITOV(tdp);
        } else if (dp->i_number == ndp->ni_dent.d_ino) {
                vdp = ITOV(dp);
                ndp->ni_vp = ITOV(tdp);
        } else if (dp->i_number == ndp->ni_dent.d_ino) {
                vdp = ITOV(dp);
-               vdp->v_count++; /* we want ourself, ie "." */
+               VREF(vdp);      /* we want ourself, ie "." */
                ndp->ni_vp = vdp;
        } else {
                if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
                ndp->ni_vp = vdp;
        } else {
                if (error = iget(dp, ndp->ni_dent.d_ino, &tdp))
index e818e9d..f2d7934 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)ufs_vfsops.c        7.15 (Berkeley) %G%
+ *     @(#)ufs_vfsops.c        7.16 (Berkeley) %G%
  */
 
 
  */
 
 
@@ -427,7 +427,7 @@ ufs_sync(mp, waitfor)
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
                    (ip->i_flag & (IMOD|IACC|IUPD|ICHG)) == 0)
                        continue;
                ILOCK(ip);
-               ITOV(ip)->v_count++;
+               VREF(ITOV(ip));
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
                error = iupdat(ip, &time, &time, waitfor == MNT_WAIT);
                iput(ip);
        }
index e56b994..7f4dbe1 100644 (file)
@@ -14,7 +14,7 @@
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- *     @(#)vm_swap.c   7.5 (Berkeley) %G%
+ *     @(#)vm_swap.c   7.6 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"