From owner-freebsd-net@FreeBSD.ORG Thu Apr 17 14:31:37 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 4433C1065677; Thu, 17 Apr 2008 14:31:37 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.freebsd.org (Postfix) with ESMTP id E1EA48FC2B; Thu, 17 Apr 2008 14:31:36 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 518E546B66; Thu, 17 Apr 2008 10:31:35 -0400 (EDT) Date: Thu, 17 Apr 2008 15:31:35 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Alexander Sack In-Reply-To: <3c0b01820804170705l9c196d9rff45fa4919ace8c@mail.gmail.com> Message-ID: <20080417152837.E71628@fledge.watson.org> 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> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed 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:31:37 -0000 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. Robert N M Watson Computer Laboratory University of Cambridge