From owner-freebsd-net@FreeBSD.ORG Thu Sep 8 18:49:28 2011 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1205) id B3BA91065672; Thu, 8 Sep 2011 18:49:28 +0000 (UTC) Date: Thu, 8 Sep 2011 18:49:28 +0000 From: Navdeep Parhar To: John Baldwin Message-ID: <20110908184928.GA87872@hub.freebsd.org> Mail-Followup-To: John Baldwin , freebsd-net@freebsd.org, Ben Hutchings , Takuya ASADA , jfv@freebsd.org References: <1315221674.3092.282.camel@deadeye> <201109080834.11607.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201109080834.11607.jhb@freebsd.org> User-Agent: Mutt/1.4.2.1i Cc: Ben Hutchings , freebsd-net@freebsd.org, jfv@freebsd.org, Takuya ASADA Subject: Re: Adding Flow Director sysctls to ixgbe(4) 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, 08 Sep 2011 18:49:28 -0000 On Thu, Sep 08, 2011 at 08:34:11AM -0400, John Baldwin wrote: > On Monday, September 05, 2011 7:21:12 am Ben Hutchings wrote: > > On Mon, 2011-09-05 at 15:51 +0900, Takuya ASADA wrote: > > > Hi, > > > > > > I implemented Ethernet Flow Director sysctls to ixgbe(4), here's a detail: > > > > > > - Adding removing signature filter > > > On linux version of ixgbe driver, it has ability to set/remove perfect > > > filter from userland using ethtool command. > > > I implemented similar feature, but on sysctl, and not perfect filter > > > but signature filter(which means hash collision may occurs). > > [...] > > > > Linux also has a generic interface to RX filtering and hashing > > (ethtool_rxnfc) which ixgbe supports; wouldn't it be better for FreeBSD > > to support something like that? > > Some sort of shared interface might be nice. The cxgb(4) and cxgbe(4) drivers > both provide their own tools to manipulate filters, though they do not > provide explicit steering IIRC. Both of them can filter as well as steer (and the tools let you do that). cxgbe(4) can do a lot more (rewrite + switch, replicate, etc.) but those features are perhaps too specialized to be configurable via a general purpose tool. > > We would need to come up with some sort of standard interface (ioctls?) for > adding filters however. +1 for a standard interface. imho the kernel needs to be aware of the rx and tx queues of a NIC, and not just for steering. But that's a separate discussion. Regards, Navdeep