From owner-freebsd-net@FreeBSD.ORG Thu Apr 17 14:52:13 2008 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F3C1F106564A for ; Thu, 17 Apr 2008 14:52:12 +0000 (UTC) (envelope-from pisymbol@gmail.com) Received: from yw-out-2324.google.com (yw-out-2324.google.com [74.125.46.30]) by mx1.freebsd.org (Postfix) with ESMTP id AC3A58FC1D for ; Thu, 17 Apr 2008 14:52:07 +0000 (UTC) (envelope-from pisymbol@gmail.com) Received: by yw-out-2324.google.com with SMTP id 2so61445ywt.13 for ; Thu, 17 Apr 2008 07:52:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=Kg6WkPrg+Ub0Ik4Xcx+Zh5UPKsJWBFYz44iQqdS/8U4=; b=eWPO1prv10iq/YZe+HCEE67xXtOj+0ttuCfyW73wCbIKFnglCykMT60VY+CV++OoPpmrgWpYYHhczti3CxX5XuUo6Lmy7dQBxnz0ErbNZBPuYnz5ockOsEaKCOa1enO/Uhc1b8df2HH9dRyymhLUQ922qvSC2/Zs1A1K1GvuBqg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=jhD/mB4dg1QojLmluQujeZWWvBXY4wkgEEsIX3UoUEPY++emPMRjhIQ7duk7dLkwEVE1nv45lTw3QP8EBvNThQv4STl4nQg8LqYcdFCg7uHbExFCpASwn3Hyyehb8g6zWz5Vz2BfkpoNfedAhnpvPB+ysYW/hGrXUEmOHbxv4Q4= Received: by 10.151.44.18 with SMTP id w18mr1747228ybj.184.1208443925714; Thu, 17 Apr 2008 07:52:05 -0700 (PDT) Received: by 10.151.15.21 with HTTP; Thu, 17 Apr 2008 07:52:05 -0700 (PDT) Message-ID: <3c0b01820804170752x68714a6cj10919e6cb7ffda16@mail.gmail.com> Date: Thu, 17 Apr 2008 10:52:05 -0400 From: "Alexander Sack" To: "Robert Watson" In-Reply-To: <20080417152837.E71628@fledge.watson.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <3c0b01820804160929i76cc04fdy975929e2a04c0368@mail.gmail.com> <200804161456.20823.jkim@FreeBSD.org> <3c0b01820804161328m77704ca0g43077a9718d446d4@mail.gmail.com> <200804161654.22452.jkim@FreeBSD.org> <3c0b01820804161402u3aac4425n41172294ad33a667@mail.gmail.com> <20080417112329.G47027@delplex.bde.org> <3c0b01820804170643w6b771ce9jdfc2dc5b240922b@mail.gmail.com> <20080417145652.J71628@fledge.watson.org> <3c0b01820804170705l9c196d9rff45fa4919ace8c@mail.gmail.com> <20080417152837.E71628@fledge.watson.org> Cc: freebsd-net@freebsd.org, Dieter , Jung-uk Kim Subject: Re: bge dropping packets issue X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Apr 2008 14:52:13 -0000 On Thu, Apr 17, 2008 at 10:31 AM, Robert Watson wrote: > > On Thu, 17 Apr 2008, Alexander Sack wrote: > > > > Robert, alright, this all makes sense. So it seems to me that the first > step to salvation in my world is to turn off DEVICE_POLLING and rely on the > interrupt coalescing that exists on the card. My only concern if this does > work is what impact this has on the overall system. > > > > I would generally discourage use of our current DEVICE_POLLING code using > modern network devices, as the polling rate as compared to buffer size has > changed significantly, meaning that polling rates have to be set > ridiculously high. Also, I suspect strongly that it interacts badly with > our ithread/scheduling/etc parts, which might lead to difficult to diagnose > problems. Interrupt moderation is not as featureful as DEVICE_POLLING, but > it is better supported; I'd like to see further work done to allow us to > pick up some of the scheduling features for ithreads as well in the future. Gotcha, this is really good to know. FreeBSD is a new OS for me to work on but I'm learning so much everyday! I believe Solaris uses ithreads natively and I do know there are some drivers that forcefully create kernel threads to handle interrupts as way to scale (I have no idea the ramification of this on FreeBSD or if the overhead of creating a new kthread outweighs the benefits). Going to go turn off DEVICE_POLLING and see what happens... -aps