Add ether_input_chain2() which could be called by ethernet NIC drivers to
commit18c98f58547726069901cd796dcc9b4f16faf6ef
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Mon, 23 Jun 2008 11:57:19 +0000 (23 11:57 +0000)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Mon, 23 Jun 2008 11:57:19 +0000 (23 11:57 +0000)
treec2093d69f993500fec181d1d46ca4f85ea3d903d
parent94e9bfe8ab7619ef47e358ec22dda8bfd4f2dd42
Add ether_input_chain2() which could be called by ethernet NIC drivers to
deliver packets into upper layer.  Unlike ether_input_chain(), this function
only locates the msgport for the input packets, rest of the functionalities
of ether_input_chain() are performed in the protocal threads, i.e. after
packets reaches target msgports.  This function and other related functions
are put under kernel option ETHER_INPUT2, which is _not_ enabled by default.
As of this commit, vlan(4) and ipflow don't work with ether_input_chain2().

em(4) is adapted to aware ETHER_INPUT2.

Reviewed-by: dillon@, aggelos@ (early version)
# Additional comments are added to the the reviewed patch.
sys/conf/options
sys/config/LINT
sys/dev/netif/em/if_em.c
sys/net/if_ethersubr.c
sys/net/if_var.h
sys/net/netisr.c
sys/net/netisr.h