Author: jhb Date: Tue Nov 2 13:00:56 2010 New Revision: 214675 URL: http://svn.freebsd.org/changeset/base/214675
Log: Don't leak the LLE lock if the arptimer callout is pending or inactive. Reported by: David Rhodus MFC after: 1 month Modified: head/sys/netinet/if_ether.c Modified: head/sys/netinet/if_ether.c ============================================================================== --- head/sys/netinet/if_ether.c Tue Nov 2 12:42:46 2010 (r214674) +++ head/sys/netinet/if_ether.c Tue Nov 2 13:00:56 2010 (r214675) @@ -178,16 +178,16 @@ arptimer(void *arg) LLE_REMREF(lle); (void) llentry_free(lle); ARPSTAT_INC(timeouts); - } + } else { #ifdef DIAGNOSTIC - else { struct sockaddr *l3addr = L3_ADDR(lle); log(LOG_INFO, "arptimer issue: %p, IPv4 address: \"%s\"\n", lle, inet_ntoa( ((const struct sockaddr_in *)l3addr)->sin_addr)); - } #endif + LLE_WUNLOCK(lle); + } } IF_AFDATA_UNLOCK(ifp); CURVNET_RESTORE(); _______________________________________________ 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"