From owner-freebsd-current@FreeBSD.ORG Mon Dec 15 20:54:10 2008 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DFC8D1065673 for ; Mon, 15 Dec 2008 20:54:10 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from ebb.errno.com (ebb.errno.com [69.12.149.25]) by mx1.freebsd.org (Postfix) with ESMTP id 951358FC16 for ; Mon, 15 Dec 2008 20:54:10 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from trouble.errno.com (trouble.errno.com [10.0.0.248]) (authenticated bits=0) by ebb.errno.com (8.13.6/8.12.6) with ESMTP id mBFKsA5m008286 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 15 Dec 2008 12:54:10 -0800 (PST) (envelope-from sam@freebsd.org) Message-ID: <4946C3F2.9040305@freebsd.org> Date: Mon, 15 Dec 2008 12:54:10 -0800 From: Sam Leffler Organization: FreeBSD Project User-Agent: Thunderbird 2.0.0.9 (X11/20071125) MIME-Version: 1.0 To: "Paul B. Mahol" References: <4945B308.30306@freebsd.org> <3a142e750812150721q7454f83bre13c2d957fcba15b@mail.gmail.com> In-Reply-To: <3a142e750812150721q7454f83bre13c2d957fcba15b@mail.gmail.com> Content-Type: multipart/mixed; boundary="------------010008010605080202010002" X-DCC--Metrics: ebb.errno.com; whitelist Cc: current@freebsd.org Subject: Re: HEADS UP: svn commit: r186107 - head/sys/net80211 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Dec 2008 20:54:11 -0000 This is a multi-part message in MIME format. --------------010008010605080202010002 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Paul B. Mahol wrote: > On 12/15/08, Sam Leffler wrote: > >> Note this requires ifconfig be rebuilt after. It'd be good for someone >> to look at api changes to break this dependency w/ user mode. >> > > I got double faults when destroying vap (after use), maybe it is not > net80211 related > but I will post output anyway. > > This is an arp-v2 issue. Patch attached that fixes it for me. Sam --------------010008010605080202010002 Content-Type: text/plain; name="lle.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="lle.patch" Index: netinet/in.c =================================================================== --- netinet/in.c (revision 186132) +++ netinet/in.c (working copy) @@ -1060,6 +1060,8 @@ static void in_lltable_free(struct lltable *llt, struct llentry *lle) { + LLE_WUNLOCK(lle); + LLE_LOCK_DESTROY(lle); free(lle, M_LLTABLE); } Index: net/if_llatbl.h =================================================================== --- net/if_llatbl.h (revision 186132) +++ net/if_llatbl.h (working copy) @@ -81,6 +81,7 @@ #define LLE_DOWNGRADE(lle) rw_downgrade(&(lle)->lle_lock) #define LLE_TRY_UPGRADE(lle) rw_try_upgrade(&(lle)->lle_lock) #define LLE_LOCK_INIT(lle) rw_init_flags(&(lle)->lle_lock, "lle", RW_DUPOK) +#define LLE_LOCK_DESTROY(lle) rw_destroy(&(lle)->lle_lock) #define LLE_WLOCK_ASSERT(lle) rw_assert(&(lle)->lle_lock, RA_WLOCKED) #define LLE_IS_VALID(lle) (((lle) != NULL) && ((lle) != (void *)-1)) Index: netinet6/in6.c =================================================================== --- netinet6/in6.c (revision 186132) +++ netinet6/in6.c (working copy) @@ -2115,6 +2115,8 @@ static void in6_lltable_free(struct lltable *llt, struct llentry *lle) { + LLE_WUNLOCK(lle); + LLE_LOCK_DESTROY(lle); free(lle, M_LLTABLE); } --------------010008010605080202010002--