This diff removes a false positive from bluhm@'s lock analyser.  This is
the last piece to turn the NET_LOCK() on.

pfctlinput(PRC_IFDOWN, ...) is a noop.  None of the *_ctlinput() handler
present in the kernel handle PRC_IFDOWN.  And all of do nothing because
inet{,6}ctlerrmap == 0.

The two other chunks are for cleanup purposes.

ok?

Index: net/if.c
===================================================================
RCS file: /cvs/src/sys/net/if.c,v
retrieving revision 1.494
diff -u -p -r1.494 if.c
--- net/if.c    4 May 2017 15:00:24 -0000       1.494
+++ net/if.c    8 May 2017 08:47:10 -0000
@@ -1504,15 +1504,10 @@ if_downall(void)
 void
 if_down(struct ifnet *ifp)
 {
-       struct ifaddr *ifa;
-
        splsoftassert(IPL_SOFTNET);
 
        ifp->if_flags &= ~IFF_UP;
        getmicrotime(&ifp->if_lastchange);
-       TAILQ_FOREACH(ifa, &ifp->if_addrlist, ifa_list) {
-               pfctlinput(PRC_IFDOWN, ifa->ifa_addr);
-       }
        IFQ_PURGE(&ifp->if_snd);
 
        if_linkstate(ifp);
Index: netinet6/ip6_output.c
===================================================================
RCS file: /cvs/src/sys/netinet6/ip6_output.c,v
retrieving revision 1.228
diff -u -p -r1.228 ip6_output.c
--- netinet6/ip6_output.c       3 May 2017 08:35:55 -0000       1.228
+++ netinet6/ip6_output.c       8 May 2017 08:46:28 -0000
@@ -708,15 +708,6 @@ reroute:
                if (mtu > IPV6_MAXPACKET)
                        mtu = IPV6_MAXPACKET;
 
-#if 0
-               /* Notify a proper path MTU to applications. */
-               mtu32 = (u_int32_t)mtu;
-               bzero(&ip6cp, sizeof(ip6cp));
-               ip6cp.ip6c_cmdarg = (void *)&mtu32;
-               pfctlinput2(PRC_MSGSIZE, sin6tosa(&ro_pmtu->ro_dst),
-                   (void *)&ip6cp);
-#endif
-
                /*
                 * Change the next header field of the last header in the
                 * unfragmentable part.
Index: netinet6/nd6.c
===================================================================
RCS file: /cvs/src/sys/netinet6/nd6.c,v
retrieving revision 1.207
diff -u -p -r1.207 nd6.c
--- netinet6/nd6.c      26 Mar 2017 08:49:22 -0000      1.207
+++ netinet6/nd6.c      8 May 2017 08:46:21 -0000
@@ -748,10 +748,6 @@ nd6_free(struct rtentry *rt, int gc)
 
        splsoftassert(IPL_SOFTNET);
 
-       /*
-        * we used to have pfctlinput(PRC_HOSTDEAD) here.
-        * even though it is not harmful, it was not really necessary.
-        */
        ifp = if_get(rt->rt_ifidx);
 
        if (!ip6_forwarding) {

Reply via email to