Source-Changes-HG archive

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

[src/trunk]: src/lib/libp2k Remove dead code from previous revision.



details:   https://anonhg.NetBSD.org/src/rev/44fdfc6ec1a8
branches:  trunk
changeset: 759155:44fdfc6ec1a8
user:      pooka <pooka%NetBSD.org@localhost>
date:      Tue Nov 30 15:42:11 2010 +0000

description:
Remove dead code from previous revision.

diffstat:

 lib/libp2k/p2k.c |  125 ++++++++++++++++++++----------------------------------
 1 files changed, 46 insertions(+), 79 deletions(-)

diffs (260 lines):

diff -r 22b14d6b1c02 -r 44fdfc6ec1a8 lib/libp2k/p2k.c
--- a/lib/libp2k/p2k.c  Tue Nov 30 15:41:35 2010 +0000
+++ b/lib/libp2k/p2k.c  Tue Nov 30 15:42:11 2010 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: p2k.c,v 1.46 2010/11/30 10:49:22 dholland Exp $        */
+/*     $NetBSD: p2k.c,v 1.47 2010/11/30 15:42:11 pooka Exp $   */
 
 /*
  * Copyright (c) 2007, 2008, 2009  Antti Kantee.  All Rights Reserved.
@@ -84,7 +84,6 @@
 
 struct p2k_node {
        struct vnode *p2n_vp;
-       struct componentname *p2n_cn;
 
        /*
         * Ok, then, uhm, we need .. *drumroll*.. two componentname
@@ -134,21 +133,21 @@
 }
 
 static struct componentname *
-makecn(const struct puffs_cn *pcn, int myflags)
+makecn(const struct puffs_cn *pcn)
 {
        struct kauth_cred *cred;
 
        cred = cred_create(pcn->pcn_cred);
        /* LINTED: prehistoric types in first two args */
-       return rump_pub_makecn(pcn->pcn_nameiop, pcn->pcn_flags | myflags,
+       return rump_pub_makecn(pcn->pcn_nameiop, pcn->pcn_flags,
            pcn->pcn_name, pcn->pcn_namelen, cred, rump_pub_lwproc_curlwp());
 }
 
 static __inline void
-freecn(struct componentname *cnp, int flags)
+freecn(struct componentname *cnp)
 {
 
-       rump_pub_freecn(cnp, flags | RUMPCN_FREECRED);
+       rump_pub_freecn(cnp, RUMPCN_FREECRED);
 }
 
 static void
@@ -218,7 +217,6 @@
 {
 
        assert(p2n->p2n_vp == NULL);
-       assert(p2n->p2n_cn == NULL);
        LIST_REMOVE(p2n, p2n_entries);
        free(p2n);
 }
@@ -675,48 +673,42 @@
        uint64_t rdev; /* XXX: uint64_t because of stack overwrite in compat */
        int rv;
 
-       cn = makecn(pcn, 0);
+       cn = makecn(pcn);
        RUMP_VOP_LOCK(dvp, LK_EXCLUSIVE);
        rv = RUMP_VOP_LOOKUP(dvp, &vp, cn);
        RUMP_VOP_UNLOCK(dvp);
-       if (rump_pub_checksavecn(cn)) {
-               /*
-                * XXX the rename lookup protocol is currently horribly
-                * broken.  We get 1) DELETE with SAVESTART 2) DELETE
-                * without SAVESTART 3) RENAME.  Hold on to this like
-                * it were the absolute truth for now.  However, do
-                * not sprinkle asserts based on this due to abovementioned
-                * brokenness -- some file system drivers might not
-                * even issue ABORT properly, so just free resources
-                * on the fly and hope for the best.  PR kern/42348
-                */
-               if (pcn->pcn_flags & RUMP_NAMEI_INRENAME) {
-                       if (pcn->pcn_nameiop == RUMP_NAMEI_DELETE) {
-                               /* save path from the first lookup */
-                               if (pcn->pcn_flags & RUMP_NAMEI_SAVESTART) {
-                                       if (p2n_dir->p2n_cn_ren_src)
-                                               freecn(p2n_dir->p2n_cn_ren_src,
-                                                   0);
-                                       p2n_dir->p2n_cn_ren_src = cn;
-                               } else {
-                                       freecn(cn, 0);
-                                       cn = NULL;
-                               }
+
+       /*
+        * XXX the rename lookup protocol is currently horribly
+        * broken.  We get 1) DELETE with SAVESTART 2) DELETE
+        * without SAVESTART 3) RENAME.  Hold on to this like
+        * it were the absolute truth for now.  However, do
+        * not sprinkle asserts based on this due to abovementioned
+        * brokenness -- some file system drivers might not
+        * even issue ABORT properly, so just free resources
+        * on the fly and hope for the best.  PR kern/42348
+        */
+       if (pcn->pcn_flags & RUMP_NAMEI_INRENAME) {
+               if (pcn->pcn_nameiop == RUMP_NAMEI_DELETE) {
+                       /* save path from the first lookup */
+                       if (pcn->pcn_flags & RUMP_NAMEI_SAVESTART) {
+                               if (p2n_dir->p2n_cn_ren_src)
+                                       freecn(p2n_dir->p2n_cn_ren_src);
+                               p2n_dir->p2n_cn_ren_src = cn;
                        } else {
-                               assert(pcn->pcn_nameiop == RUMP_NAMEI_RENAME);
-                               if (p2n_dir->p2n_cn_ren_targ)
-                                       freecn(p2n_dir->p2n_cn_ren_targ,
-                                           0);
-                               p2n_dir->p2n_cn_ren_targ = cn;
+                               freecn(cn);
+                               cn = NULL;
                        }
                } else {
-                       assert(p2n_dir->p2n_cn == NULL);
-                       p2n_dir->p2n_cn = cn;
+                       assert(pcn->pcn_nameiop == RUMP_NAMEI_RENAME);
+                       if (p2n_dir->p2n_cn_ren_targ)
+                               freecn(p2n_dir->p2n_cn_ren_targ);
+                       p2n_dir->p2n_cn_ren_targ = cn;
                }
        } else {
-               freecn(cn, 0);
-               cn = NULL;
+               freecn(cn);
        }
+
        if (rv) {
                if (rv == EJUSTRETURN) {
                        rv = ENOENT;
@@ -733,11 +725,9 @@
                        } else {
                                p2n_dir->p2n_cn_ren_targ = NULL;
                        }
-               } else {
-                       p2n_dir->p2n_cn = NULL;
+
+                       RUMP_VOP_ABORTOP(dvp, cn);
                }
-               /* XXX: what in the world should happen with SAVESTART? */
-               RUMP_VOP_ABORTOP(dvp, cn);
                return ENOMEM;
        }
 
@@ -799,13 +789,7 @@
                return ENOMEM;
        DOCOMPAT(vap, va_x);
 
-       if (p2n_dir->p2n_cn) {
-               cn = p2n_dir->p2n_cn;
-               p2n_dir->p2n_cn = NULL;
-       } else {
-               cn = makecn(pcn, 0);
-       }
-
+       cn = makecn(pcn);
        RUMP_VOP_LOCK(dvp, LK_EXCLUSIVE);
        rump_pub_vp_incref(dvp);
        if (makefn) {
@@ -814,7 +798,7 @@
                rv = symfn(dvp, &vp, cn, va_x, link_target);
        }
        assert(RUMP_VOP_ISLOCKED(dvp) == 0);
-       freecn(cn, 0);
+       freecn(cn);
 
        if (rv == 0) {
                RUMP_VOP_UNLOCK(vp);
@@ -1027,16 +1011,12 @@
        struct p2k_node *p2n_dir = opc;
        struct componentname *cnp;
 
-       if ((cnp = p2n_dir->p2n_cn) != NULL) {
-               freecn(cnp, 0);
-               p2n_dir->p2n_cn = NULL;
-       }
        if ((cnp = p2n_dir->p2n_cn_ren_src) != NULL) {
-               freecn(cnp, 0);
+               freecn(cnp);
                p2n_dir->p2n_cn_ren_src = NULL;
        }
        if ((cnp = p2n_dir->p2n_cn_ren_targ) != NULL) {
-               freecn(cnp, 0);
+               freecn(cnp);
                p2n_dir->p2n_cn_ren_targ = NULL;
        }
 
@@ -1052,13 +1032,7 @@
        struct componentname *cn;
        int rv;
 
-       if (p2n_dir->p2n_cn) {
-               cn = p2n_dir->p2n_cn;
-               p2n_dir->p2n_cn = NULL;
-       } else {
-               cn = makecn(pcn, 0);
-       }
-
+       cn = makecn(pcn);
        RUMP_VOP_LOCK(dvp, LK_EXCLUSIVE);
        rump_pub_vp_incref(dvp);
        RUMP_VOP_LOCK(vp, LK_EXCLUSIVE);
@@ -1066,7 +1040,7 @@
        rv = nukefn(dvp, vp, cn);
        assert(RUMP_VOP_ISLOCKED(dvp) == 0);
        assert(RUMP_VOP_ISLOCKED(vp) == 0);
-       freecn(cn, 0);
+       freecn(cn);
 
        return rv;
 
@@ -1087,21 +1061,14 @@
        puffs_cookie_t targ, const struct puffs_cn *pcn)
 {
        struct vnode *dvp = OPC2VP(opc);
-       struct p2k_node *p2n_dir = opc;
        struct componentname *cn;
        int rv;
 
-       if (p2n_dir->p2n_cn) {
-               cn = p2n_dir->p2n_cn;
-               p2n_dir->p2n_cn = NULL;
-       } else {
-               cn = makecn(pcn, 0);
-       }
-
+       cn = makecn(pcn);
        RUMP_VOP_LOCK(dvp, LK_EXCLUSIVE);
        rump_pub_vp_incref(dvp);
        rv = RUMP_VOP_LINK(dvp, OPC2VP(targ), cn);
-       freecn(cn, 0);
+       freecn(cn);
 
        return rv;
 }
@@ -1123,14 +1090,14 @@
                cn_src = p2n_srcdir->p2n_cn_ren_src;
                p2n_srcdir->p2n_cn_ren_src = NULL;
        } else {
-               cn_src = makecn(pcn_src, 0);
+               cn_src = makecn(pcn_src);
        }
 
        if (p2n_targdir->p2n_cn_ren_targ) {
                cn_targ = p2n_targdir->p2n_cn_ren_targ;
                p2n_targdir->p2n_cn_ren_targ = NULL;
        } else {
-               cn_targ = makecn(pcn_targ, 0);
+               cn_targ = makecn(pcn_targ);
        }
 
        dvp = OPC2VP(src_dir);
@@ -1153,8 +1120,8 @@
        if (tvp) {
                assert(RUMP_VOP_ISLOCKED(tvp) == 0);
        }
-       freecn(cn_src, 0);
-       freecn(cn_targ, 0);
+       freecn(cn_src);
+       freecn(cn_targ);
 
        return rv;
 }



Home | Main Index | Thread Index | Old Index