From owner-freebsd-net Mon Apr 24 19:19:27 2000 Delivered-To: freebsd-net@freebsd.org Received: from bubba.whistle.com (bubba.whistle.com [207.76.205.7]) by hub.freebsd.org (Postfix) with ESMTP id 4F77C37B737; Mon, 24 Apr 2000 19:19:25 -0700 (PDT) (envelope-from archie@whistle.com) Received: (from archie@localhost) by bubba.whistle.com (8.9.3/8.9.2) id TAA30215; Mon, 24 Apr 2000 19:14:44 -0700 (PDT) From: Archie Cobbs Message-Id: <200004250214.TAA30215@bubba.whistle.com> Subject: Re: Proposal for ethernet, bridging, netgraph In-Reply-To: <3902A56B.167EB0E7@elischer.org> from Julian Elischer at "Apr 23, 2000 00:25:31 am" To: julian@elischer.org (Julian Elischer) Date: Mon, 24 Apr 2000 19:14:44 -0700 (PDT) Cc: archie@whistle.com (Archie Cobbs), pavel@alum.mit.edu, nsayer@sftw.com, luigi@freebsd.org, freebsd-net@freebsd.org X-Mailer: ELM [version 2.4ME+ PL54 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Julian Elischer writes: > Archie Cobbs wrote: > > The current situation with Ethernet drivers, Bridging, BPF, and > > Netgraph is that it's all a bit klugey and gross. As evidence of > > this, every single Ethernet driver (I've counted 45) must contain > > the same duplicated code to handle both BPF and bridging.. OK, here's a patch ready for review & test.. this patch does one thing, which is move the calls to BPF and BRIDGE'ing out of each Ethernet driver and into ether_input(). ftp://ftp.whistle.com/pub/archie/misc/net.cleanup.patch Since it intersects with a zillion differnet Ethernet drivers, and my current machine only has one, it's kindof hard to test. It does seem to work OK with the fxp driver. If people can test these that would be much appreciated.. especially BPF, BRIDGE'ing, and multicast. Most of these patches are straightforward, however a few are more tricky.. in particular: - pci/if_de.c (what does TULIP_HASHONLY mean exactly?) - dev/ed/if_ed.c (contained a BRIDGE optimization) - dev/ie/if_ie.c (contained a BPF optimization) Also, although it's obvious for some, I can't know for certain which drivers are shared with other BSD's.. and therefore need the code that was ripped out put back (inside #ifndef __FreeBSD__). Thanks! -Archie ___________________________________________________________________________ Archie Cobbs * Whistle Communications, Inc. * http://www.whistle.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message