dispatch most functionality of ether_input to protocol threads

Aggelos Economopoulos aoiko at cc.ece.ntua.gr
Sun Jun 22 17:08:41 PDT 2008


On Sunday 22 June 2008, Sepherosa Ziehau wrote:
> Hi,
> 
> Following patch dispatch most ether_input functionality to protocol threads:
> http://leaf.dragonflybsd.org/~sephe/ether_input2.diff
> 
> It is not built by default, and some parts (vlan/fastforwarding) are
> still not finished yet.  But the idea behind this patch is quite
> simple:
> ether_input does nothing more than finding the proper protocol threads
> for the input packets.
> 
> I have done some tests with em.  Bridge and normal operation works
> with the patch.  Hopefully, I could adapt vlan and fastforwarding
> before this release.  After this release, I plan to switch ether_input
> to use ether_input_chain2 in this patch and move on to parallelize
> ipfw.
> 
> Since the new code is not built by default, I want to commit it soon,
> if no one objects.

Please do. It's a change in the right direction and, as you say, it's a
prerequisite to parallelizing ipfw.

I haven't done a careful reading (comparing old/new code), but I doubt
I'd find a bug anyway :) One thing that you may want to consider is
calling ether_init_netpacket() explicitly rather than implicitly in
ether_mport(); let ether_mport() only do what its name suggests.

Aggelos





More information about the Kernel mailing list