changeset 3672:c5a5c46b417f

6523875 as_arl_g_head should be as_arl_head instead
author yz155240
date Fri, 16 Feb 2007 22:50:16 -0800
parents 48011e38989d
children 5bba3401c7f4
files usr/src/uts/common/inet/arp/arp.c usr/src/uts/common/inet/arp/arp_netinfo.c usr/src/uts/common/inet/arp_impl.h
diffstat 3 files changed, 22 insertions(+), 22 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/uts/common/inet/arp/arp.c	Fri Feb 16 15:39:38 2007 -0800
+++ b/usr/src/uts/common/inet/arp/arp.c	Fri Feb 16 22:50:16 2007 -0800
@@ -999,7 +999,7 @@
 		ar_ce_walk(as, ar_ce_delete_per_arl, arl);
 		/* Free any messages waiting for a bind_ack */
 		/* Get the arl out of the chain. */
-		rw_enter(&as->as_arl_g_lock, RW_WRITER);
+		rw_enter(&as->as_arl_lock, RW_WRITER);
 		for (arlp = &as->as_arl_head; *arlp;
 		    arlp = &(*arlp)->arl_next) {
 			if (*arlp == arl) {
@@ -1010,7 +1010,7 @@
 
 		ASSERT(arl->arl_dlpi_deferred == NULL);
 		ar->ar_arl = NULL;
-		rw_exit(&as->as_arl_g_lock);
+		rw_exit(&as->as_arl_lock);
 
 		mi_free((char *)arl);
 	}
@@ -2201,7 +2201,7 @@
 		arl_t *arl1;
 
 		do {
-			for (arl1 = as->as_arl_g_head; arl1 != NULL;
+			for (arl1 = as->as_arl_head; arl1 != NULL;
 			    arl1 = arl1->arl_next)
 				if (arl1->arl_index ==
 				    as->as_arp_index_counter) {
@@ -3668,7 +3668,7 @@
 	    as->as_netstack);
 
 	/* Chain in the new arl. */
-	rw_enter(&as->as_arl_g_lock, RW_WRITER);
+	rw_enter(&as->as_arl_lock, RW_WRITER);
 	arl->arl_next = as->as_arl_head;
 	as->as_arl_head = arl;
 	DTRACE_PROBE1(slifname_set, arl_t *, arl);
@@ -3684,7 +3684,7 @@
 	iocp->ioc_count = msgsize(ioccpy->b_cont);
 	ioccpy->b_wptr = (uchar_t *)(iocp + 1);
 	putnext(arl->arl_wq, ioccpy);
-	rw_exit(&as->as_arl_g_lock);
+	rw_exit(&as->as_arl_lock);
 
 	return (0);
 }
@@ -3747,10 +3747,10 @@
 	arl->arl_ppa = ppa;
 	DTRACE_PROBE1(setppa_done, arl_t *, arl);
 	/* Chain in the new arl. */
-	rw_enter(&as->as_arl_g_lock, RW_WRITER);
+	rw_enter(&as->as_arl_lock, RW_WRITER);
 	arl->arl_next = as->as_arl_head;
 	as->as_arl_head = arl;
-	rw_exit(&as->as_arl_g_lock);
+	rw_exit(&as->as_arl_lock);
 
 	return (0);
 }
@@ -4439,7 +4439,7 @@
 	as->as_arp_index_counter = 1;
 	as->as_arp_counter_wrapped = 0;
 
-	rw_init(&as->as_arl_g_lock, "ARP ARl lock", RW_DRIVER, NULL);
+	rw_init(&as->as_arl_lock, NULL, RW_DRIVER, NULL);
 	arp_net_init(as, ns);
 	arp_hook_init(as);
 
@@ -4457,7 +4457,7 @@
 
 	arp_hook_destroy(as);
 	arp_net_destroy(as);
-	rw_destroy(&as->as_arl_g_lock);
+	rw_destroy(&as->as_arl_lock);
 
 	nd_free(&as->as_nd);
 	kmem_free(as->as_param_arr, sizeof (arp_param_arr));
--- a/usr/src/uts/common/inet/arp/arp_netinfo.c	Fri Feb 16 15:39:38 2007 -0800
+++ b/usr/src/uts/common/inet/arp/arp_netinfo.c	Fri Feb 16 22:50:16 2007 -0800
@@ -166,15 +166,15 @@
 	ASSERT(ns != NULL);
 
 	as = ns->netstack_arp;
-	rw_enter(&as->as_arl_g_lock, RW_READER);
-	for (arl = as->as_arl_g_head; arl != NULL; arl = arl->arl_next) {
+	rw_enter(&as->as_arl_lock, RW_READER);
+	for (arl = as->as_arl_head; arl != NULL; arl = arl->arl_next) {
 		if (arl->arl_index == phy_ifdata) {
 			(void) strlcpy(buffer, arl->arl_name, buflen);
-			rw_exit(&as->as_arl_g_lock);
+			rw_exit(&as->as_arl_lock);
 			return (0);
 		}
 	}
-	rw_exit(&as->as_arl_g_lock);
+	rw_exit(&as->as_arl_lock);
 
 	return (1);
 }
@@ -223,11 +223,11 @@
 	ASSERT(ns != NULL);
 
 	as = ns->netstack_arp;
-	rw_enter(&as->as_arl_g_lock, RW_READER);
+	rw_enter(&as->as_arl_lock, RW_READER);
 	if (phy_ifdata == 0) {
-		arl = as->as_arl_g_head;
+		arl = as->as_arl_head;
 	} else {
-		for (arl = as->as_arl_g_head; arl != NULL;
+		for (arl = as->as_arl_head; arl != NULL;
 		    arl = arl->arl_next) {
 			if (arl->arl_index == phy_ifdata) {
 				arl = arl->arl_next;
@@ -238,7 +238,7 @@
 
 	index = (arl != NULL) ? arl->arl_index : 0;
 
-	rw_exit(&as->as_arl_g_lock);
+	rw_exit(&as->as_arl_lock);
 
 	return (index);
 }
@@ -258,14 +258,14 @@
 
 	index = 0;
 	as = ns->netstack_arp;
-	rw_enter(&as->as_arl_g_lock, RW_READER);
-	for (arl = as->as_arl_g_head; arl != NULL; arl = arl->arl_next) {
+	rw_enter(&as->as_arl_lock, RW_READER);
+	for (arl = as->as_arl_head; arl != NULL; arl = arl->arl_next) {
 		if (strcmp(name, arl->arl_name) == 0) {
 			index = arl->arl_index;
 			break;
 		}
 	}
-	rw_exit(&as->as_arl_g_lock);
+	rw_exit(&as->as_arl_lock);
 
 	return (index);
 
--- a/usr/src/uts/common/inet/arp_impl.h	Fri Feb 16 15:39:38 2007 -0800
+++ b/usr/src/uts/common/inet/arp_impl.h	Fri Feb 16 22:50:16 2007 -0800
@@ -190,9 +190,9 @@
 	 * it is now possible to access data structures in the ARP module
 	 * without the code being executed in the context of the IP module,
 	 * thus there is no locking being enforced through the use of STREAMS.
+	 * as_arl_lock is used to protect as_arl_head list.
 	 */
-	krwlock_t	as_arl_g_lock;
-	arl_t		*as_arl_g_head;	/* ARL List Head */
+	krwlock_t	as_arl_lock;
 
 	uint32_t	as_arp_index_counter;
 	uint32_t	as_arp_counter_wrapped;