Author: melifaro
Date: Wed Jan 13 14:32:48 2016
New Revision: 293829
URL: https://svnweb.freebsd.org/changeset/base/293829

Log:
  Remove RTF_RNH_LOCKED support from rtalloc1_fib().
  
  Last caller using it was eliminated in r293471.
  
  Sponsored by: Yandex LLC

Modified:
  head/sys/net/route.c
  head/sys/net/route.h

Modified: head/sys/net/route.c
==============================================================================
--- head/sys/net/route.c        Wed Jan 13 14:28:12 2016        (r293828)
+++ head/sys/net/route.c        Wed Jan 13 14:32:48 2016        (r293829)
@@ -409,7 +409,6 @@ rtalloc1_fib(struct sockaddr *dst, int r
        struct rtentry *newrt;
        struct rt_addrinfo info;
        int err = 0, msgtype = RTM_MISS;
-       int needlock;
 
        KASSERT((fibnum < rt_numfibs), ("rtalloc1_fib: bad fibnum"));
        rnh = rt_tables_get_rnh(fibnum, dst->sa_family);
@@ -420,23 +419,16 @@ rtalloc1_fib(struct sockaddr *dst, int r
        /*
         * Look up the address in the table for that Address Family
         */
-       needlock = !(ignflags & RTF_RNH_LOCKED);
-       if (needlock)
-               RADIX_NODE_HEAD_RLOCK(rnh);
-#ifdef INVARIANTS      
-       else
-               RADIX_NODE_HEAD_LOCK_ASSERT(rnh);
-#endif
+       RADIX_NODE_HEAD_RLOCK(rnh);
        rn = rnh->rnh_matchaddr(dst, rnh);
        if (rn && ((rn->rn_flags & RNF_ROOT) == 0)) {
                newrt = RNTORT(rn);
                RT_LOCK(newrt);
                RT_ADDREF(newrt);
-               if (needlock)
-                       RADIX_NODE_HEAD_RUNLOCK(rnh);
-               goto done;
+               RADIX_NODE_HEAD_RUNLOCK(rnh);
+               return (newrt);
 
-       } else if (needlock)
+       } else
                RADIX_NODE_HEAD_RUNLOCK(rnh);
        
        /*
@@ -456,10 +448,7 @@ miss:
                bzero(&info, sizeof(info));
                info.rti_info[RTAX_DST] = dst;
                rt_missmsg_fib(msgtype, &info, 0, err, fibnum);
-       }       
-done:
-       if (newrt)
-               RT_LOCK_ASSERT(newrt);
+       }
        return (newrt);
 }
 

Modified: head/sys/net/route.h
==============================================================================
--- head/sys/net/route.h        Wed Jan 13 14:28:12 2016        (r293828)
+++ head/sys/net/route.h        Wed Jan 13 14:32:48 2016        (r293829)
@@ -175,7 +175,7 @@ struct rtentry {
                                        /* 0x8000000 and up unassigned */
 #define        RTF_STICKY       0x10000000     /* always route dst->src */
 
-#define        RTF_RNH_LOCKED   0x40000000     /* radix node head is locked */
+#define        RTF_RNH_LOCKED   0x40000000     /* unused */
 
 #define        RTF_GWFLAG_COMPAT 0x80000000    /* a compatibility bit for 
interacting
                                           with existing routing apps */
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to