Mercurial > illumos > illumos-gate
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;