From owner-freebsd-net@FreeBSD.ORG Wed Nov 30 02:50:31 2005 Return-Path: X-Original-To: freebsd-net@freebsd.org Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E032A16A420; Wed, 30 Nov 2005 02:50:31 +0000 (GMT) (envelope-from nielsen-list@memberwebs.com) Received: from mail.npubs.com (mail.zoneseven.net [209.66.100.224]) by mx1.FreeBSD.org (Postfix) with ESMTP id CE38043D72; Wed, 30 Nov 2005 02:50:13 +0000 (GMT) (envelope-from nielsen-list@memberwebs.com) Message-ID: <438D0896.1070808@memberwebs.com> From: Nate Nielsen User-Agent: Mozilla Thunderbird 1.0.7 (X11/20051013) X-Accept-Language: en-us, en MIME-Version: 1.0 To: freebsd-hackers@freebsd.org, freebsd-net@freebsd.org, freebsd-current@freebsd.org References: <438CE0A8.4010205@memberwebs.com> In-Reply-To: <438CE0A8.4010205@memberwebs.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV using ClamSMTP Date: Wed, 30 Nov 2005 03:04:44 +0000 (GMT) Cc: Subject: Re: Memory leak in net80211 on FBSD 6.0 X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: nielsen@memberwebs.com List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Nov 2005 02:50:32 -0000 Nate Nielsen wrote: > I'm experiencing a memory leak in the net80211 code. I have two atheros > 5213-A cards on two embedded systems running FreeBSD 6.0. They are setup > as IBSS (adhoc) stations. After roughly 15 seconds of ~14Mbps TCP > traffic (single stream) I promptly run out of memory: > >>login: panic: kmem_malloc(4096): kmem_map too small: 25165824 total allocated >>Uptime: 3m0s >>Cannot dump. No dump device defined. >>Automatic reboot in 5 seconds - press a key on the console to abort >>Rebooting... > > The boxes have 64MB of memory each. > vmstat -m reports the following just before the panic: > >> Type InUse MemUse HighUse Requests Size(s) >> >> 80211node 20554 20554K - 20559 512,1024 I've put debugging code in node_alloc() and node_free() (in net80211/ieee80211_node.c) and can confirm that thousands of ieee80211_node structures are being allocated, at a cost of 1K a piece. I'll continue to look into this (stumbling about), but if anyone has any advice or ideas of where to look, I'd be eternally grateful. Cheers, Nate