Received: with ECARTIS (v1.0.0; list netdev); Mon, 14 Mar 2005 21:16:25 -0800 (PST) Received: from orb.pobox.com (orb.pobox.com [207.8.226.5]) by oss.sgi.com (8.13.0/8.13.0) with ESMTP id j2F5GJQh020641 for ; Mon, 14 Mar 2005 21:16:19 -0800 Received: from orb (localhost [127.0.0.1]) by orb.pobox.com (Postfix) with ESMTP id 999CC8C; Tue, 15 Mar 2005 00:16:17 -0500 (EST) Received: from [192.168.0.3] (wbar2.sea1-4-5-053-048.sea1.dsl-verizon.net [4.5.53.48]) by orb.sasl.smtp.pobox.com (Postfix) with ESMTP id B87898C; Tue, 15 Mar 2005 00:16:13 -0500 (EST) In-Reply-To: <200503142023.j2EKNMDD027705@guinness.s2io.com> References: <200503142023.j2EKNMDD027705@guinness.s2io.com> Mime-Version: 1.0 (Apple Message framework v619.2) Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: Content-Transfer-Encoding: 7bit Cc: "" , "" , "'Jeff Garzik'" From: Scott Feldman Subject: Re: [ANNOUNCE] Experimental Driver for Neterion/S2io 10GbE Adapters Date: Mon, 14 Mar 2005 21:14:59 -0800 To: "" X-Mailer: Apple Mail (2.619.2) X-Virus-Scanned: ClamAV 0.83/762/Sun Mar 13 15:35:33 2005 on oss.sgi.com X-Virus-Status: Clean X-archive-position: 131 X-ecartis-version: Ecartis v1.0.0 Sender: netdev-bounce@oss.sgi.com Errors-to: netdev-bounce@oss.sgi.com X-original-sender: sfeldma@pobox.com Precedence: bulk X-list: netdev Content-Length: 1242 Lines: 30 On Mar 14, 2005, at 12:22 PM, Alex Aizman wrote: > HAL-based > ========= > Most Neterion drivers are HAL (Hardware Abstraction Layer) based. This > is > always a curse and blessing; in our experience this was the latter by > a big > margin. While the current "s2io" driver in the kernel doesn't share > HAL code > with other driver, the "xge" driver is HAL-based. e1000 and ixgb are HAL-based, which is why there is always push back when someone in the community modifies *_hw.[ch]. I'd hate to see more of this in the kernel, but I can definitely relate to the "testing across multiple OSes" gain. Here's an (old?) idea: remember the NDIS-wrapper project? I think the reverse is much more interesting. A linux-wrapper takes a plain old Linux driver and wraps it with what ever is needed to make it an NDIS driver. Or FreeBSD, or whatever. Let's pretend this is trivial for a second. What do we gain? 1) one clean Linux driver to maintain, 2) testability on other OSes, and 3) access to other OSes' certification kits. Licensing is clean: the Linux driver is GPL and the linux-wrapper code is GPL. Can't the world revolve around Linux and let everyone else be burdened with the abstraction layer overhead? -scott