This is now always called at IPL_SOFTNET, so assert it.

ok?

Index: net/route.c
===================================================================
RCS file: /cvs/src/sys/net/route.c,v
retrieving revision 1.339
diff -u -p -r1.339 route.c
--- net/route.c 21 Nov 2016 10:30:42 -0000      1.339
+++ net/route.c 28 Nov 2016 14:29:04 -0000
@@ -237,9 +237,10 @@ struct rtentry *
 rt_match(struct sockaddr *dst, uint32_t *src, int flags, unsigned int tableid)
 {
        struct rtentry          *rt0, *rt = NULL;
-       int                      s, error = 0;
+       int                      error = 0;
+
+       splsoftassert(IPL_SOFTNET);
 
-       s = splsoftnet();
        rt = rtable_match(tableid, dst, src);
        if (rt != NULL) {
                if ((rt->rt_flags & RTF_CLONING) && ISSET(flags, RT_RESOLVE)) {
@@ -266,7 +267,6 @@ rt_match(struct sockaddr *dst, uint32_t 
                rt->rt_use++;
        } else
                rtstat.rts_unreach++;
-       splx(s);
        return (rt);
 }
 

Reply via email to