From owner-freebsd-current@FreeBSD.ORG Mon Jun 29 17:55:03 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 93D61106566C for ; Mon, 29 Jun 2009 17:55:03 +0000 (UTC) (envelope-from hselasky@freebsd.org) Received: from swip.net (mailfe04.swip.net [212.247.154.97]) by mx1.freebsd.org (Postfix) with ESMTP id 1E2AB8FC15 for ; Mon, 29 Jun 2009 17:55:02 +0000 (UTC) (envelope-from hselasky@freebsd.org) X-Cloudmark-Score: 0.000000 [] X-Cloudmark-Analysis: v=1.0 c=1 a=FX71IqPRD0gA:10 a=MXw7gxVQKqGXY79tIT8aFQ==:17 a=nhcUl4RjOkunimaTTzYA:9 a=YvzOHj9fYW2u5l71a14A:7 a=5p-KKcKfaNxnYHrdDbmRhvUsiFwA:4 Received: from [62.113.132.61] (account mc467741@c2i.net HELO laptop.adsl.tele2.no) by mailfe04.swip.net (CommuniGate Pro SMTP 5.2.13) with ESMTPA id 1269617465 for freebsd-current@freebsd.org; Mon, 29 Jun 2009 18:55:00 +0200 Received-SPF: softfail receiver=mailfe04.swip.net; client-ip=62.113.132.61; envelope-from=hselasky@freebsd.org From: Hans Petter Selasky To: freebsd-current@freebsd.org Date: Mon, 29 Jun 2009 18:54:32 +0200 User-Agent: KMail/1.11.4 (FreeBSD/8.0-CURRENT; KDE/4.2.4; i386; ; ) MIME-Version: 1.0 Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200906291854.33113.hselasky@freebsd.org> Subject: Contigmalloc regression seen on latest 7.x and 8.x branches 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, 29 Jun 2009 17:55:03 -0000 Hi, I know there has been some changes in the contigmalloc area this year. It appears to me like if a bug has sneaked in. My PCI driver is trying to allocate 32K aligned to 32K. I've added some debug prints to isolate the failing case: contigmalloc: size=0x00008000, flag=2, low=0x00000000 high=0xffffffff alignment=0x00008000 boundary=0x00000000 contigmalloc: ret=0xe5af2000 bus_dmamem_alloc failed to align memory properly. > uname -a FreeBSD xxxx 8.0-CURRENT FreeBSD 8.0-CURRENT #3: Mon Jun 29 18:43:03 CEST 2009 xxx@xxx:/usr/obj/usr/8-current/src/sys/custom i386 It should be quite trivial to reproduce. Simply make a KLD that calls contigmalloc() with the parameters given above. Anyone have any patches? --HPS