name resolution checking (need kern/kern_malloc.c 7.25.1.1,
authorKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Mon, 20 May 1991 05:34:16 +0000 (21:34 -0800)
committerKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Mon, 20 May 1991 05:34:16 +0000 (21:34 -0800)
kern/vfs_lookup.c 7.31.1.1, kern/vfs_syscalls.c 7.70.1.1,
nfs/nfs_serv.c 7.40.1.1, nfs/nfs_syscalls.c 7.26.1.1,
ufs/ufs_vnops.c 7.64.1.1, and hp300/hp300/trap.c 7.14.1.1)

SCCS-vsn: sys/nfs/nfs_serv.c 7.40.1.1
SCCS-vsn: sys/ufs/ffs/ffs_vnops.c 7.64.1.1
SCCS-vsn: sys/ufs/ffs/ufs_vnops.c 7.64.1.1
SCCS-vsn: sys/ufs/lfs/lfs_vnops.c 7.64.1.1
SCCS-vsn: sys/ufs/ufs/ufs_vnops.c 7.64.1.1

usr/src/sys/nfs/nfs_serv.c
usr/src/sys/ufs/ffs/ffs_vnops.c
usr/src/sys/ufs/ffs/ufs_vnops.c
usr/src/sys/ufs/lfs/lfs_vnops.c
usr/src/sys/ufs/ufs/ufs_vnops.c

index 2749aed..43b9460 100644 (file)
@@ -7,7 +7,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)nfs_serv.c  7.40 (Berkeley) %G%
+ *     @(#)nfs_serv.c  7.40.1.1 (Berkeley) %G%
  */
 
 /*
  */
 
 /*
@@ -573,6 +573,7 @@ nfsrv_create(mrep, md, dpos, cred, xid, mrq, repstat, p)
                vap->va_mode = nfstov_mode(*tl);
                rdev = fxdr_unsigned(long, *(tl+3));
                if (vap->va_type == VREG || vap->va_type == VSOCK) {
                vap->va_mode = nfstov_mode(*tl);
                rdev = fxdr_unsigned(long, *(tl+3));
                if (vap->va_type == VREG || vap->va_type == VSOCK) {
+                       p->p_spare[1]--;
                        vrele(nd.ni_startdir);
                        if (error = VOP_CREATE(&nd, vap, p))
                                nfsm_reply(0);
                        vrele(nd.ni_startdir);
                        if (error = VOP_CREATE(&nd, vap, p))
                                nfsm_reply(0);
@@ -595,11 +596,13 @@ nfsrv_create(mrep, md, dpos, cred, xid, mrq, repstat, p)
                        } else
                                vap->va_rdev = (dev_t)rdev;
                        if (error = VOP_MKNOD(&nd, vap, cred, p)) {
                        } else
                                vap->va_rdev = (dev_t)rdev;
                        if (error = VOP_MKNOD(&nd, vap, cred, p)) {
+                               p->p_spare[1]--;
                                vrele(nd.ni_startdir);
                                nfsm_reply(0);
                        }
                        nd.ni_nameiop &= ~(OPMASK | LOCKPARENT | SAVESTART);
                        nd.ni_nameiop |= LOOKUP;
                                vrele(nd.ni_startdir);
                                nfsm_reply(0);
                        }
                        nd.ni_nameiop &= ~(OPMASK | LOCKPARENT | SAVESTART);
                        nd.ni_nameiop |= LOOKUP;
+                       p->p_spare[1]--;
                        if (error = lookup(&nd, p)) {
                                free(nd.ni_pnbuf, M_NAMEI);
                                nfsm_reply(0);
                        if (error = lookup(&nd, p)) {
                                free(nd.ni_pnbuf, M_NAMEI);
                                nfsm_reply(0);
@@ -620,6 +623,7 @@ nfsrv_create(mrep, md, dpos, cred, xid, mrq, repstat, p)
                }
                vp = nd.ni_vp;
        } else {
                }
                vp = nd.ni_vp;
        } else {
+               p->p_spare[1]--;
                vrele(nd.ni_startdir);
                free(nd.ni_pnbuf, M_NAMEI);
                vp = nd.ni_vp;
                vrele(nd.ni_startdir);
                free(nd.ni_pnbuf, M_NAMEI);
                vp = nd.ni_vp;
@@ -649,7 +653,7 @@ nfsrv_create(mrep, md, dpos, cred, xid, mrq, repstat, p)
        return (error);
 nfsmout:
        if (nd.ni_nameiop)
        return (error);
 nfsmout:
        if (nd.ni_nameiop)
-               vrele(nd.ni_startdir);
+               p->p_spare[1]--, vrele(nd.ni_startdir);
        VOP_ABORTOP(&nd);
        if (nd.ni_dvp == nd.ni_vp)
                vrele(nd.ni_dvp);
        VOP_ABORTOP(&nd);
        if (nd.ni_dvp == nd.ni_vp)
                vrele(nd.ni_dvp);
@@ -660,6 +664,7 @@ nfsmout:
        return (error);
 
 out:
        return (error);
 
 out:
+       p->p_spare[1]--;
        vrele(nd.ni_startdir);
        free(nd.ni_pnbuf, M_NAMEI);
        nfsm_reply(0);
        vrele(nd.ni_startdir);
        free(nd.ni_pnbuf, M_NAMEI);
        nfsm_reply(0);
@@ -818,9 +823,11 @@ out:
                vrele(fromnd.ni_dvp);
                vrele(fvp);
        }
                vrele(fromnd.ni_dvp);
                vrele(fvp);
        }
+       p->p_spare[1]--;
        vrele(tond.ni_startdir);
        FREE(tond.ni_pnbuf, M_NAMEI);
 out1:
        vrele(tond.ni_startdir);
        FREE(tond.ni_pnbuf, M_NAMEI);
 out1:
+       p->p_spare[1]--;
        vrele(fromnd.ni_startdir);
        FREE(fromnd.ni_pnbuf, M_NAMEI);
        nfsm_reply(0);
        vrele(fromnd.ni_startdir);
        FREE(fromnd.ni_pnbuf, M_NAMEI);
        nfsm_reply(0);
@@ -828,10 +835,12 @@ out1:
 
 nfsmout:
        if (tond.ni_nameiop) {
 
 nfsmout:
        if (tond.ni_nameiop) {
+               p->p_spare[1]--;
                vrele(tond.ni_startdir);
                FREE(tond.ni_pnbuf, M_NAMEI);
        }
        if (fromnd.ni_nameiop) {
                vrele(tond.ni_startdir);
                FREE(tond.ni_pnbuf, M_NAMEI);
        }
        if (fromnd.ni_nameiop) {
+               p->p_spare[1]--;
                vrele(fromnd.ni_startdir);
                FREE(fromnd.ni_pnbuf, M_NAMEI);
                VOP_ABORTOP(&fromnd);
                vrele(fromnd.ni_startdir);
                FREE(fromnd.ni_pnbuf, M_NAMEI);
                VOP_ABORTOP(&fromnd);
index 8599d9a..873773c 100644 (file)
@@ -4,7 +4,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)ffs_vnops.c 7.64 (Berkeley) %G%
+ *     @(#)ffs_vnops.c 7.64.1.1 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -838,6 +838,7 @@ ufs_rename(fndp, tndp, p)
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
+               p->p_spare[1]--;
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
@@ -961,6 +962,7 @@ unlinkit:
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
+       p->p_spare[1]--;
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);
index c783f85..7318807 100644 (file)
@@ -4,7 +4,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)ufs_vnops.c 7.64 (Berkeley) %G%
+ *     @(#)ufs_vnops.c 7.64.1.1 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -838,6 +838,7 @@ ufs_rename(fndp, tndp, p)
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
+               p->p_spare[1]--;
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
@@ -961,6 +962,7 @@ unlinkit:
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
+       p->p_spare[1]--;
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);
index 894d485..ab0b826 100644 (file)
@@ -4,7 +4,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)lfs_vnops.c 7.64 (Berkeley) %G%
+ *     @(#)lfs_vnops.c 7.64.1.1 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -838,6 +838,7 @@ ufs_rename(fndp, tndp, p)
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
+               p->p_spare[1]--;
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
@@ -961,6 +962,7 @@ unlinkit:
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
+       p->p_spare[1]--;
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);
index c783f85..7318807 100644 (file)
@@ -4,7 +4,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)ufs_vnops.c 7.64 (Berkeley) %G%
+ *     @(#)ufs_vnops.c 7.64.1.1 (Berkeley) %G%
  */
 
 #include "param.h"
  */
 
 #include "param.h"
@@ -838,6 +838,7 @@ ufs_rename(fndp, tndp, p)
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
                        goto out;
                if ((tndp->ni_nameiop & SAVESTART) == 0)
                        panic("ufs_rename: lost to startdir");
+               p->p_spare[1]--;
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
                if (error = lookup(tndp, p))
                        goto out;
                dp = VTOI(tndp->ni_dvp);
@@ -961,6 +962,7 @@ unlinkit:
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
        fndp->ni_nameiop |= LOCKPARENT | LOCKLEAF;
        if ((fndp->ni_nameiop & SAVESTART) == 0)
                panic("ufs_rename: lost from startdir");
+       p->p_spare[1]--;
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);
        (void) lookup(fndp, p);
        if (fndp->ni_vp != NULL) {
                xp = VTOI(fndp->ni_vp);