arp: Embed netmsg_inarp in mbuf for asynchronized ARP input processing
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Mon, 25 Feb 2013 14:13:14 +0000 (22:13 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Mon, 25 Feb 2013 14:22:17 +0000 (22:22 +0800)
commit858ae8d6b6ddb8db4a7a985fd2d4890b9c07696c
treecc9925e32ea52feaf40d9558ac516f48760fcec4
parentd80bcfb07e521aba893564dfad98c54ba2d1370d
arp: Embed netmsg_inarp in mbuf for asynchronized ARP input processing

- Embed netmsg_inarp, which records necessary states for routing table
  updating and later ARP reply, into mbuf; this does not change mbuf
  header size.
- If routing tables need updating upon ARP packet reception, the
  netmsg_inarp embedded in the input ARP packet is sent asynchronizingly
  to routing threads and the possible ARP reply is defered until all
  routing tables are updated, i.e. the ARP packet is redispatched to
  netisr0 for the ARP reply sending from the last routing thread.
- Remove no longer needed dedicated network threads.

Discussed-with: dillon@
sys/net/netisr.c
sys/net/netisr.h
sys/net/netmsg.h
sys/netinet/if_ether.c
sys/sys/mbuf.h