Author: ae
Date: Sat Mar  7 18:33:08 2015
New Revision: 279730
URL: https://svnweb.freebsd.org/changeset/base/279730

Log:
  lla_lookup() can directly call llentry_free() for static entries
  and the last one requires to hold afdata's wlock.
  
  PR:           197096
  MFC after:    1 week

Modified:
  head/sys/netinet/if_ether.c

Modified: head/sys/netinet/if_ether.c
==============================================================================
--- head/sys/netinet/if_ether.c Sat Mar  7 18:25:58 2015        (r279729)
+++ head/sys/netinet/if_ether.c Sat Mar  7 18:33:08 2015        (r279730)
@@ -149,10 +149,10 @@ arp_ifscrub(struct ifnet *ifp, uint32_t 
        addr4.sin_len    = sizeof(addr4);
        addr4.sin_family = AF_INET;
        addr4.sin_addr.s_addr = addr;
-       IF_AFDATA_RLOCK(ifp);
+       IF_AFDATA_WLOCK(ifp);
        lla_lookup(LLTABLE(ifp), (LLE_DELETE | LLE_IFADDR),
            (struct sockaddr *)&addr4);
-       IF_AFDATA_RUNLOCK(ifp);
+       IF_AFDATA_WUNLOCK(ifp);
 }
 #endif
 
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to