Author: rwatson
Date: Fri Jun 26 00:49:12 2009
New Revision: 195024
URL: http://svn.freebsd.org/changeset/base/195024

Log:
  Update Netgraph nodes to use if_addr_rlock()/if_addr_runlock() instead
  of IF_ADDR_LOCK()/IF_ADDR_UNLOCK() when iterating ifp->if_addrhead.
  
  MFC after:    6 weeks

Modified:
  head/sys/netgraph/ng_eiface.c
  head/sys/netgraph/ng_iface.c

Modified: head/sys/netgraph/ng_eiface.c
==============================================================================
--- head/sys/netgraph/ng_eiface.c       Fri Jun 26 00:46:50 2009        
(r195023)
+++ head/sys/netgraph/ng_eiface.c       Fri Jun 26 00:49:12 2009        
(r195024)
@@ -466,12 +466,12 @@ ng_eiface_rcvmsg(node_p node, item_p ite
 
                        /* Determine size of response and allocate it */
                        buflen = 0;
-                       IF_ADDR_LOCK(ifp);
+                       if_addr_rlock(ifp);
                        TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link)
                                buflen += SA_SIZE(ifa->ifa_addr);
                        NG_MKRESPONSE(resp, msg, buflen, M_NOWAIT);
                        if (resp == NULL) {
-                               IF_ADDR_UNLOCK(ifp);
+                               if_addr_runlock(ifp);
                                error = ENOMEM;
                                break;
                        }
@@ -490,7 +490,7 @@ ng_eiface_rcvmsg(node_p node, item_p ite
                                ptr += len;
                                buflen -= len;
                        }
-                       IF_ADDR_UNLOCK(ifp);
+                       if_addr_runlock(ifp);
                        break;
                    }
 

Modified: head/sys/netgraph/ng_iface.c
==============================================================================
--- head/sys/netgraph/ng_iface.c        Fri Jun 26 00:46:50 2009        
(r195023)
+++ head/sys/netgraph/ng_iface.c        Fri Jun 26 00:49:12 2009        
(r195024)
@@ -683,7 +683,7 @@ ng_iface_rcvmsg(node_p node, item_p item
                        struct ifaddr *ifa;
 
                        /* Return the first configured IP address */
-                       IF_ADDR_LOCK(ifp);
+                       if_addr_rlock(ifp);
                        TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
                                struct ng_cisco_ipaddr *ips;
 
@@ -701,7 +701,7 @@ ng_iface_rcvmsg(node_p node, item_p item
                                                ifa->ifa_netmask)->sin_addr;
                                break;
                        }
-                       IF_ADDR_UNLOCK(ifp);
+                       if_addr_runlock(ifp);
 
                        /* No IP addresses on this interface? */
                        if (ifa == NULL)
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to