From owner-freebsd-drivers@FreeBSD.ORG Thu Mar 23 17:41:52 2006 Return-Path: X-Original-To: drivers@freebsd.org Delivered-To: freebsd-drivers@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 240C516A41F for ; Thu, 23 Mar 2006 17:41:52 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (vc4-2-0-87.dsl.netrack.net [199.45.160.85]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9C07843D45 for ; Thu, 23 Mar 2006 17:41:51 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (localhost.village.org [127.0.0.1] (may be forged)) by harmony.bsdimp.com (8.13.3/8.13.3) with ESMTP id k2NHexiE091645; Thu, 23 Mar 2006 10:40:59 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Thu, 23 Mar 2006 10:41:25 -0700 (MST) Message-Id: <20060323.104125.78709197.imp@bsdimp.com> To: dave@randomparity.com From: "M. Warner Losh" In-Reply-To: <22C21BFBEB52B340A1F422CB0D88F5872E0C@snoopy.randomparity.com> References: <22C21BFBEB52B340A1F422CB0D88F5872E0C@snoopy.randomparity.com> X-Mailer: Mew version 3.3 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0 (harmony.bsdimp.com [127.0.0.1]); Thu, 23 Mar 2006 10:41:00 -0700 (MST) Cc: drivers@freebsd.org Subject: Re: What the Secret Sauce for Using Jumbo 9K Mbufs? X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Mar 2006 17:41:52 -0000 In message: <22C21BFBEB52B340A1F422CB0D88F5872E0C@snoopy.randomparity.com> "David Christensen" writes: : I was hoping to add Jumbo frame support in my Ethernet driver : by using m_getjcl() to allocate MJUM9BYTES sized mbufs to my : receive ring but I'm getting the error EFBIG when I try to map : the mbuf into device memory with bus_dmamap_load_mbuf(). The : implementation is very similar to what's done in the myri10ge : driver so I'm not sure what's needed. I tried adding : kern.ipc.nmbjumbo9=1024 to my /etc/sysctl.conf but that didn't : make a difference either. What am I missing? If I do get it : working, how far back in time can I back port the driver using : 9K mbufs? : : I'm developing on FreeBSD 7.0-CURRENT with an amd64 system. Have you made sure that the dma map specifies a large enough maximum segment size? Warner