Parallelize ip_flow:
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Thu, 3 Apr 2008 13:43:29 +0000 (13:43 +0000)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Thu, 3 Apr 2008 13:43:29 +0000 (13:43 +0000)
commit775a6411b0c05cb7ed4591077dcd160b6f52b3f1
treefc25677183f84c5f04a8573c69471bd5132c42cb
parent7b913fd660629772bb70efb01a5fd35b813005e4
Parallelize ip_flow:
- Create per-CPU ipflow hash table.  During initial ipflow installation, route
  entry to the destination is allocated on each CPU and cached in the ipflow,
  so each CPU will only access the route entry owned by itself.
- Timeout processing on per-CPU ipflow hash table is initialized by broadcasting
  IPI to each CPU.  In IPI, a per-CPU netmsg is used to inform CPU local netisr
  to do the real timout processing.
- Add sysctl node to show how many ipflow entries are used on the each CPU.
sys/netinet/ip_flow.c
sys/netinet/ip_input.c